PLearn 0.1
Public Member Functions | Static Public Member Functions | Static Public Attributes | Static Protected Member Functions | Protected Attributes | Private Types
PLearn::SharpeRatioStatsIterator Class Reference

#include <StatsIterator.h>

Inheritance diagram for PLearn::SharpeRatioStatsIterator:
Inheritance graph
[legend]
Collaboration diagram for PLearn::SharpeRatioStatsIterator:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual string info () const
 Returns a bit more informative string about object (default returns classname())
virtual void init (int inputsize)
 Call this method once with the correct inputsize.
virtual void update (const Vec &input)
 Then iterate over the data set and call this method for each row.
virtual bool finish ()
virtual string classname () const
virtual OptionListgetOptionList () const
virtual OptionMapgetOptionMap () const
virtual RemoteMethodMapgetRemoteMethodMap () const
virtual SharpeRatioStatsIteratordeepCopy (CopiesMap &copies) const
virtual void makeDeepCopyFromShallowCopy (CopiesMap &copies)
 Does the necessary operations to transform a shallow copy (this) into a deep copy by deep-copying all the members that need to be.
virtual void oldwrite (ostream &out) const

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 PPathdeclaringFile ()

Static Public Attributes

static StaticInitializer _static_initializer_

Static Protected Member Functions

static void declareOptions (OptionList &ol)
 Declare options (data fields) for the class.

Protected Attributes

Vec nnonzero
Vec meansquared
Vec mean

Private Types

typedef StatsIterator inherited

Detailed Description

Compute the Sharpe ratio = mean(profit) / stdev(profit) where profit is assumed to be the "cost" given in input. Note that the mean and stdev are only computed over the instances where profit!=0 (because these represent the actual transactions that occured).

Definition at line 227 of file StatsIterator.h.


Member Typedef Documentation

Reimplemented from PLearn::StatsIterator.

Definition at line 229 of file StatsIterator.h.


Member Function Documentation

string PLearn::SharpeRatioStatsIterator::_classname_ ( ) [static]

Reimplemented from PLearn::StatsIterator.

Definition at line 358 of file StatsIterator.cc.

OptionList & PLearn::SharpeRatioStatsIterator::_getOptionList_ ( ) [static]

Reimplemented from PLearn::StatsIterator.

Definition at line 358 of file StatsIterator.cc.

RemoteMethodMap & PLearn::SharpeRatioStatsIterator::_getRemoteMethodMap_ ( ) [static]

Reimplemented from PLearn::StatsIterator.

Definition at line 358 of file StatsIterator.cc.

bool PLearn::SharpeRatioStatsIterator::_isa_ ( const Object o) [static]

Reimplemented from PLearn::StatsIterator.

Definition at line 358 of file StatsIterator.cc.

Object * PLearn::SharpeRatioStatsIterator::_new_instance_for_typemap_ ( ) [static]

Reimplemented from PLearn::Object.

Definition at line 358 of file StatsIterator.cc.

StaticInitializer SharpeRatioStatsIterator::_static_initializer_ & PLearn::SharpeRatioStatsIterator::_static_initialize_ ( ) [static]

Reimplemented from PLearn::StatsIterator.

Definition at line 358 of file StatsIterator.cc.

string PLearn::SharpeRatioStatsIterator::classname ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 358 of file StatsIterator.cc.

void PLearn::SharpeRatioStatsIterator::declareOptions ( OptionList ol) [static, protected]

Declare options (data fields) for the class.

Redefine this in subclasses: call declareOption(...) for each option, and then call inherited::declareOptions(options). Please call the inherited method AT THE END to get the options listed in a consistent order (from most recently defined to least recently defined).

  static void MyDerivedClass::declareOptions(OptionList& ol)
  {
      declareOption(ol, "inputsize", &MyObject::inputsize_,
                    OptionBase::buildoption,
                    "The size of the input; it must be provided");
      declareOption(ol, "weights", &MyObject::weights,
                    OptionBase::learntoption,
                    "The learned model weights");
      inherited::declareOptions(ol);
  }
Parameters:
olList of options that is progressively being constructed for the current class.

Reimplemented from PLearn::StatsIterator.

Definition at line 397 of file StatsIterator.cc.

References PLearn::declareOption(), PLearn::OptionBase::learntoption, mean, meansquared, and nnonzero.

Here is the call graph for this function:

static const PPath& PLearn::SharpeRatioStatsIterator::declaringFile ( ) [inline, static]

Reimplemented from PLearn::StatsIterator.

Definition at line 241 of file StatsIterator.h.

:
    static void declareOptions(OptionList& ol);
SharpeRatioStatsIterator * PLearn::SharpeRatioStatsIterator::deepCopy ( CopiesMap copies) const [virtual]

Reimplemented from PLearn::StatsIterator.

Definition at line 358 of file StatsIterator.cc.

bool PLearn::SharpeRatioStatsIterator::finish ( ) [virtual]

Call this method when all the data has been shown (through update) If the method returns false, then a further pass through the data is required.

Implements PLearn::StatsIterator.

Definition at line 388 of file StatsIterator.cc.

References PLearn::mean(), PLearn::sqrt(), and PLearn::squareSubtract().

Here is the call graph for this function:

OptionList & PLearn::SharpeRatioStatsIterator::getOptionList ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 358 of file StatsIterator.cc.

OptionMap & PLearn::SharpeRatioStatsIterator::getOptionMap ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 358 of file StatsIterator.cc.

RemoteMethodMap & PLearn::SharpeRatioStatsIterator::getRemoteMethodMap ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 358 of file StatsIterator.cc.

virtual string PLearn::SharpeRatioStatsIterator::info ( ) const [inline, virtual]

Returns a bit more informative string about object (default returns classname())

Returns:
Information about the object

Reimplemented from PLearn::Object.

Definition at line 237 of file StatsIterator.h.

{ return "sharpe_ratio"; }
void PLearn::SharpeRatioStatsIterator::init ( int  inputsize) [virtual]

Call this method once with the correct inputsize.

Implements PLearn::StatsIterator.

Definition at line 367 of file StatsIterator.cc.

References PLearn::mean().

{ 
    // We do not use resize on purpose, so 
    // that the previous result Vec does not get overwritten
    meansquared = Vec(inputsize);
    mean = Vec(inputsize);
    nnonzero = Vec(inputsize);
} 

Here is the call graph for this function:

void PLearn::SharpeRatioStatsIterator::makeDeepCopyFromShallowCopy ( CopiesMap copies) [virtual]

Does the necessary operations to transform a shallow copy (this) into a deep copy by deep-copying all the members that need to be.

This needs to be overridden by every class that adds "complex" data members to the class, such as Vec, Mat, PP<Something>, etc. Typical implementation:

  void CLASS_OF_THIS::makeDeepCopyFromShallowCopy(CopiesMap& copies)
  {
      inherited::makeDeepCopyFromShallowCopy(copies);
      deepCopyField(complex_data_member1, copies);
      deepCopyField(complex_data_member2, copies);
      ...
  }
Parameters:
copiesA map used by the deep-copy mechanism to keep track of already-copied objects.

Reimplemented from PLearn::StatsIterator.

Definition at line 360 of file StatsIterator.cc.

References PLearn::deepCopyField(), and PLearn::mean().

Here is the call graph for this function:

void PLearn::SharpeRatioStatsIterator::oldwrite ( ostream &  out) const [virtual]

Reimplemented from PLearn::StatsIterator.

Definition at line 411 of file StatsIterator.cc.

References PLearn::mean(), PLearn::write(), PLearn::writeField(), PLearn::writeFooter(), and PLearn::writeHeader().

{
    writeHeader(out,"SharpeRatioStatsIterator");
    inherited::write(out);
    writeField(out,"mean",mean);
    writeField(out,"meansquared",meansquared);
    writeField(out,"nnonzero",nnonzero);
    writeFooter(out,"SharpeRatioStatsIterator");
}

Here is the call graph for this function:

void PLearn::SharpeRatioStatsIterator::update ( const Vec input) [virtual]

Then iterate over the data set and call this method for each row.

Implements PLearn::StatsIterator.

Definition at line 376 of file StatsIterator.cc.

References i, in, PLearn::TVec< T >::length(), PLearn::mean(), and n.

{ 
    int n=input.length();
    for (int i=0;i<n;i++)
    {
        real in=input[i];
        if (in!=0) nnonzero[i]++;
        mean[i] += in;
        meansquared[i] += in*in;
    }
}

Here is the call graph for this function:


Member Data Documentation

Reimplemented from PLearn::StatsIterator.

Definition at line 241 of file StatsIterator.h.

Definition at line 234 of file StatsIterator.h.

Referenced by declareOptions().

Definition at line 233 of file StatsIterator.h.

Referenced by declareOptions().

Definition at line 232 of file StatsIterator.h.

Referenced by declareOptions().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines