Ни в коей мере нельзя рассматривать данное решение как готовый продукт. Скорее как платформу для разработки и тестирования собственных стратегии. Сам алгоритм стратегии прописан в одной процедуре, в которой вы можете прописать свою стратегию. Все остальные процедуры и функции являются вспомогательными и предназначены в основном для расчета и визуализации результатов.
В решении также заложен механизм оптимизации изменяемых параметров стратегии на определенном интервале времени. Да, да это та самая подгонка под историю. Но к оптимизации надо относиться с большой осторожностью.
Расчет результата сделок в процентах весьма условно и почти ни о чем не говорит, рассчитывается от указанного гарантийного обеспечения.
В базе загружены котировки на фьючерс Доллар-рубль за период 2008 по 2016 годы. 5-минутки. Есть котировки и по некоторым другим фьючерсам.
Котировки можно брать с сайта финама и подгружать в базу обработкой. В процессе загрузки обработка создаст котировки дневных свечей и рассчитает значения скользящей средней с периодом 652. Я использовал только этот период, поэтому рассчитывал его заранее исключительно в целях быстродействия. Вы можете использовать скользящую среднюю с другим периодом, тогда расчет будет происходить на лету, но и работать будет медленнее.
В последнее время я тестил только фьючерс на пару Доллар-Рубль, здесь обработка работает корректно. По другим фьючерсам я не могу обещать правильную работу, тут код смотреть надо и за какие периоды есть котировки в базе.
Пару слов о реализованной в решении стратегии. Стратегия трендовая, из индикаторов используется только скользящая средняя и ATR. Рабочий таймфрейм – 5 минут. Открытие и закрытие сделок по цене закрытия свечи или по стоп-приказу. Стоп ставится всегда, реализовано несколько вариантов установки стоп-приказа. Я использовал ATR – что означает, чем больше волатильность на рынке (определяется по дневным свечам), тем дальше ставим стоп и тем большую цель рассчитываем взять. Взятие цели проверяется раз в сутки во время указанное в реквизите «Время фикс.» Сделка открывается в Лонг, если цена находится выше скользящей средней, свеча растущая и High и Low свечи выше аналогичных параметров предыдущей свечи. Сделка в Шорт, соответственно открывается наоборот.
Сейчас эта стратегия уже не работает и заработать на ней не получится, а раньше было неплохо.
Писалось данное решение исключительно для себя и публикация не планировалась, поэтому код не идеален и комментарии минимум. Описания тоже нет. Ну как есть, так есть.
Дальнейшее развитие решения не планируется.
Моя первая публикация.