PLearn 0.1
|
#include <PricingTransactionPairProfitFunction.h>
Public Member Functions | |
PricingTransactionPairProfitFunction () | |
PricingTransactionPairProfitFunction (real the_multiplicative_cost, real the_additive_cost=0, real the_per_unit_cost=0) | |
virtual string | classname () const |
virtual OptionList & | getOptionList () const |
virtual OptionMap & | getOptionMap () const |
virtual RemoteMethodMap & | getRemoteMethodMap () const |
virtual PricingTransactionPairProfitFunction * | deepCopy (CopiesMap &copies) const |
virtual string | info () const |
Returns a bit more informative string about object (default returns classname()) | |
virtual real | evaluate (const Vec &output, const Vec &target) const |
** Subclasses must override this method ** | |
Static Public Member Functions | |
static string | _classname_ () |
static OptionList & | _getOptionList_ () |
static RemoteMethodMap & | _getRemoteMethodMap_ () |
static Object * | _new_instance_for_typemap_ () |
static bool | _isa_ (const Object *o) |
static void | _static_initialize_ () |
static const PPath & | declaringFile () |
Static Public Attributes | |
static StaticInitializer | _static_initializer_ |
Static Protected Member Functions | |
static void | declareOptions (OptionList &ol) |
Recognized options: all 3 fields. | |
Protected Attributes | |
real | multiplicative_cost |
transaction loss | |
real | additive_cost |
transaction loss | |
real | per_unit_cost |
transaction loss | |
Private Types | |
typedef Kernel | inherited |
profit function that takes (output,target) as arguments and computes a profit. The output has at least 2 elements which represent the number of units of the security bought (or sold, if <0), and the cash change due to the transaction at time t1. The target vector contains at least one element which represents the price of the security at a later time t2. Profit is computed as follows: transaction_loss_t2 = nb_units_transaction>0 ? additive_cost + multiplicative_cost * |nb_units_transaction| * price_t2 : 0 profit = cash_earned_at_t1 + nb_units_transaction * price_t2 - transaction_loss_t2;
where additive_cost, multiplicative_cost, per_unit_cost are user-specified parameters that control transaction losses
Definition at line 67 of file PricingTransactionPairProfitFunction.h.
typedef Kernel PLearn::PricingTransactionPairProfitFunction::inherited [private] |
Reimplemented from PLearn::Kernel.
Definition at line 69 of file PricingTransactionPairProfitFunction.h.
PLearn::PricingTransactionPairProfitFunction::PricingTransactionPairProfitFunction | ( | ) | [inline] |
Definition at line 76 of file PricingTransactionPairProfitFunction.h.
{}
PLearn::PricingTransactionPairProfitFunction::PricingTransactionPairProfitFunction | ( | real | the_multiplicative_cost, |
real | the_additive_cost = 0 , |
||
real | the_per_unit_cost = 0 |
||
) | [inline] |
Definition at line 77 of file PricingTransactionPairProfitFunction.h.
: multiplicative_cost(the_multiplicative_cost), additive_cost(the_additive_cost), per_unit_cost(the_per_unit_cost) {}
string PLearn::PricingTransactionPairProfitFunction::_classname_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
OptionList & PLearn::PricingTransactionPairProfitFunction::_getOptionList_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
RemoteMethodMap & PLearn::PricingTransactionPairProfitFunction::_getRemoteMethodMap_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
Reimplemented from PLearn::Kernel.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
Object * PLearn::PricingTransactionPairProfitFunction::_new_instance_for_typemap_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
StaticInitializer PricingTransactionPairProfitFunction::_static_initializer_ & PLearn::PricingTransactionPairProfitFunction::_static_initialize_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
string PLearn::PricingTransactionPairProfitFunction::classname | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
void PLearn::PricingTransactionPairProfitFunction::declareOptions | ( | OptionList & | ol | ) | [static, protected] |
Recognized options: all 3 fields.
Reimplemented from PLearn::Kernel.
Definition at line 63 of file PricingTransactionPairProfitFunction.cc.
References additive_cost, PLearn::OptionBase::buildoption, PLearn::declareOption(), multiplicative_cost, and per_unit_cost.
{ declareOption(ol, "multiplicative_cost", &PricingTransactionPairProfitFunction::multiplicative_cost, OptionBase::buildoption, "TODO: Some comments"); declareOption(ol, "additive_cost", &PricingTransactionPairProfitFunction::additive_cost, OptionBase::buildoption, "TODO: Some comments"); declareOption(ol, "per_unit_cost", &PricingTransactionPairProfitFunction::per_unit_cost, OptionBase::buildoption, "TODO: Some comments"); inherited::declareOptions(ol); }
static const PPath& PLearn::PricingTransactionPairProfitFunction::declaringFile | ( | ) | [inline, static] |
Reimplemented from PLearn::Kernel.
Definition at line 83 of file PricingTransactionPairProfitFunction.h.
{ return "pricing_pair_profit"; }
PricingTransactionPairProfitFunction * PLearn::PricingTransactionPairProfitFunction::deepCopy | ( | CopiesMap & | copies | ) | const [virtual] |
Reimplemented from PLearn::Kernel.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
real PLearn::PricingTransactionPairProfitFunction::evaluate | ( | const Vec & | x1, |
const Vec & | x2 | ||
) | const [virtual] |
** Subclasses must override this method **
returns K(x1,x2)
Implements PLearn::Kernel.
Definition at line 51 of file PricingTransactionPairProfitFunction.cc.
{ real nb_units_transaction = output[0]; real cash_earned_at_t1 = output[1]; real price_t2 = target[0]; real transaction_loss_t2 = nb_units_transaction>0 ? additive_cost + fabs(nb_units_transaction) * (price_t2 * multiplicative_cost + per_unit_cost) : 0; real profit = cash_earned_at_t1 + nb_units_transaction * price_t2 - transaction_loss_t2; return profit; }
OptionList & PLearn::PricingTransactionPairProfitFunction::getOptionList | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
OptionMap & PLearn::PricingTransactionPairProfitFunction::getOptionMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
RemoteMethodMap & PLearn::PricingTransactionPairProfitFunction::getRemoteMethodMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 48 of file PricingTransactionPairProfitFunction.cc.
virtual string PLearn::PricingTransactionPairProfitFunction::info | ( | ) | const [inline, virtual] |
Returns a bit more informative string about object (default returns classname())
Reimplemented from PLearn::Object.
Definition at line 85 of file PricingTransactionPairProfitFunction.h.
{ return "pricing_pair_profit"; }
Reimplemented from PLearn::Kernel.
Definition at line 83 of file PricingTransactionPairProfitFunction.h.
transaction loss
Definition at line 73 of file PricingTransactionPairProfitFunction.h.
Referenced by declareOptions().
transaction loss
Definition at line 72 of file PricingTransactionPairProfitFunction.h.
Referenced by declareOptions().
transaction loss
Definition at line 74 of file PricingTransactionPairProfitFunction.h.
Referenced by declareOptions().