00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include "IndicatorPlugin.h"
00023
00024
00025 class VIDYA : public IndicatorPlugin
00026 {
00027 public:
00028 VIDYA ();
00029 virtual ~VIDYA ();
00030 Indicator * calculate ();
00031 int indicatorPrefDialog (QWidget *);
00032 void setDefaults();
00033 PlotLine * calculateCustom (QString &, QPtrList<PlotLine> &);
00034 void getIndicatorSettings (Setting &);
00035 void setIndicatorSettings (Setting &);
00036 void formatDialog (QStringList &vl, QString &rv, QString &rs);
00037 void calcVidya ( PlotLine *outSignal, PlotLine *inSignal, int iCmoPeriod, int iVidyaPeriod );
00038
00039 private:
00040 QColor color;
00041 PlotLine::LineType lineType;
00042 QString label;
00043 int period;
00044 int volPeriod;
00045 IndicatorPlugin *plug;
00046 BarData::InputType input;
00047
00048
00049
00050 void getStdDev( PlotLine *outLine, PlotLine *inLine, int iPeriod );
00051 void getNorm( PlotLine *inSig, double iMin, double iMax );
00052 void calcCMO ( PlotLine *outSignal, PlotLine *inSignal, int iPeriod);
00053 void calcAdaptCMO ( PlotLine *outSignal, PlotLine *inSignal, int iStdPeriod, int iMinLook, int iMaxLook);
00054
00055 QString colorLabel;
00056 QString labelLabel;
00057 QString lineTypeLabel;
00058 QString pluginLabel;
00059 QString periodLabel;
00060 QString volPeriodLabel;
00061 QString inputLabel;
00062 };
00063