svgr, благодарю. Это не для трейдинга, а для снижения просадок по акциям на ИИСе и валюте. Проверял вручную по фонду SBMX по ценам закрытия, таймфрейм дневной, результат лучше, чем купить и держать, как в доходности, так и просадках.
Я, когда в экселе делал тесты, старался каждый шаг в отдельном столбце делать, т.е. тут, по описанию — я бы сделал столбцы: Минимум, Максимум, Сигнал на покупку, Сигнал на продажу, Цена, Сравнение цены с сигналом на вход в сделку, Сигнал на выход из сделки, Сравнение цены с сигналом на выход, Результат сделки.
Самый удобный, универсальный способ - программа WealthLab со скриптами на языке C#. Версия 6.4 бесплатна в интернете.
for (int bar = 2; bar < Bars.Count; ++bar) {
double Maximum = ???;
double Minimum = ???;
if (Close[bar] / Maximum — 1 < -0.15) {
ExitAtClose(bar, LastPosition);
ShortAtClose(bar);
} esle if (Close[bar] / Minimum — 1 > 0.15) {
ExitAtClose(bar, LastPosition);
BuyAtClose(bar);
}
}
Вместо 0.15 можно объявить интервал значений StrategyParameter threshold для подгонки-оптимизации.