Przykładowa, prosta strategia gry na przecięcia EMA

Wpis ten jest odpowiedzą na pytanie toopaz-a zadane na forum stockwatch.

Setup gry wygląda następująco:

Kupno na przecięcie średniej EMA 7 okresowej (liczonej z ceny otwarcia) z EMA 14 okresową (liczoną po cenie otwarcia). Stop loss stawiany 10% poniżej ceny maksymalnej (liczonej od momentu zakupu akcji).

Zielona strzałka oznacza moment wejścia, czerwona – wyjścia.
EMA7 – linia zielona
EMA14 – linia czerwona
Stop Loss – linia pomarańczowa

lotos

kod do amibrokera:

EMA1=EMA(O,7);
EMA2=EMA(O,14);
sl=H*0.9;

Buy = Cross(EMA1,EMA2);
Sell=Cross(HHV(sl,Buy),L);

//2 linijki pod spodem będą rysować strzałki na wykresie bez backtestów
//PlotShapes(shapeUpArrow*Buy,colorLime);
//PlotShapes(shapeDownArrow*Sell,colorRed);

Plot(EMA1,”ema7″,colorGreen,styleThick);
Plot(EMA2,”ema14″,colorRed,styleThick);
Plot(HHV(sl,Buy),”stop”,colorOrange);

_SECTION_BEGIN(“Price”);
SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat(“{{NAME}} – {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}”, O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, “Close”, ParamColor(“Color”, colorBlack ), styleNoTitle | ParamStyle(“Style”) | GetPriceStyle() );
_SECTION_END();

zauważyłem że kopiowanie kodu czasem powoduje błędy, więc poniżej załączam plik.

http://www.sendspace.pl/file/da4c2d4027eb10aef74740f