Логика кода весьма напоминает программу,


Глава 1 Глава 2 Глава 3
Логика кода весьма напоминает программу, использованную для тестирования скользящих средних. Сначала копируется ряд параметров в местные переменные для простоты ссылок и считывания дальнейшим кодом. Затем проверяется наличие непригодных сочетаний параметров, например для MACD (osctype = 4) длина короткого скользящего среднего должна быть меньше, чем длинного, иначе тест будет пропущен. В следующем крупном блоке osctype выбирает вид рассчитываемого осциллятора (1 — быстрый стохастический, 2 — медленный стохастический, 3 — классический RSI, 4 — классический MACD) . Осциллятор oscline затем рассчитывается в виде ряда данных или вектора, генерируются дополнительные кривые, связанные с ним, например сигнальная линия sigline или медленная версия осциллятора. Верхний (upperband) и нижний (lowerband) пороги либо рассчитываются, либо задаются. Для стохастического осциллятора используются стандартные пороги 80 и 20, для RSI — пороги на уровне 70 и 30. Хотя MACD как таковой не имеет порогов, пороги для него устанавливаются на уровне плюс- минус полтора стандартных отклонения от нуля. Затем начинается процесс перебора данных, день за днем. В цикле перебора данных представляют интерес два главных блока — первый генерирует сигналы покупки и продажи, а также цены для лимитного и стоп- приказов, используемых выбранной моделью. Параметр mode/type выбирает модель: 1 — модель перекупленности/перепроданности, 2 — модель сигнальной линии, 3 — модель на расхождении. При этом используется один из вышеперечисленных осцилляторов, выбранный параметром osctype. Последний блок производит вход в рынок согласно выбранному значению параметра ordertype: 1 — для входа по цене открытия, 2 — по лимитному приказу, 3 — по стоп- приказу. Затем симулятор использует стандартную модель выхода для закрытия сделок. Точные логические основания для входа будут обсуждаться ниже в контексте индивидуальных тестов, что не требует от читателя понимания или обращения к коду.
Содержание раздела