Избранное трейдера Игорь В.
Написал третью часть Гайда, но потом решил сократить до одной самой важной главы.
Пределы системной торговли
В последнее время популяризируется тема алготорговли, автоследования, торговых сигналов, обучающих курсов. Однако мало кто задумывается о том будет ли это реально работать.
Системная торговля строится на основании анализа исторических данных. Т.е. измеряем ряд параметров ценовых рядов, делаем прогноз движения цен в будущем и торгуем этот прогноз. Проблема в том, что сам факт торговли прогноза оказывает влияние на историю цен. В физике есть понятие — режим измерения, т.е. изменение не должно существенно влиять на измеряемую величину. Обычно допускается влияние измерения на измеряемую величину в пределах 1-2% и ниже.
Хочу рассказать о том, как стоит использовать индикаторы при построении торговых систем.
И это будет целая серия статей об этом. Читая серию вы узнаете о многих индикаторах, как стандартных, так и не очень. А также о том как их использовать в своей АЛГОторговле.
Сегодня это Moving Average. Самый обычный индикатор способный давать прибыль трендовым стратегиям.
Я программист. И уже несколько лет как занимаюсь написанием механических торговых систем по заказу.
Так уж вышло, что меня периодически просят написать робота с не рабочей стратегией. Скидывают ТЗ робота, который не будет зарабатывать 100 %.
Так, например, на прошлой неделе пришло письмо с просьбой написать робота. Алгоритм, который хотел заказать клиент состоял из сигнальных SMA на вход плюс использовались тейки и стопы. Но при этом прибыли не «давали течь». Был жёсткий тэйк, ломающий все принципы трендовой торговли.
Практически все программы для разработки и тестирования механических торговых систем автоматически предоставляют отчет о показателях созданной вами стратегии, позволяющий оценить ее предполагаемую рентабельность. Однако иногда возникает потребность рассчитать параметры доходности самостоятельно. Например, когда торговля ведется вручную, либо стоит задача рассчитать совокупную эффективность по портфелю систем – обращение к таким программам, как Tradestation, Wealth-lab и подобным в данном случае является не самым оптимальным решением. С другой стороны, считать параметры на калькуляторе также не видится рациональным способом решения задачи.
При данном раскладе весьма полезной может оказаться старая программа из имеющегося у каждого пакета Microsoft Office – Excel. Функционал программы позволяет легким образом получать необходимые данные. Предлагаю один из способов создания отчета об эффективности торговой системы на описанном ниже примере.
Расширенная форма оператора for
В расширенной форме оператора for для последовательного получения значений переменной цикла используется вызов итератора. Цикл завершается, когда итератор возвращает nil.
Примечание
Под итератором понимается любая конструкция, позволяющая перебирать элементы некоторого набора. При каждом обращении к итератору он возвращает очередной элемент набора. В Lua итераторы обычно реализуются в виде функций.
Расширенная форма оператора for имеет следующий вид:
for var1, var2, …, varN in <explist> do
… — тело цикла
end
где:
var1, var2, ..., varN — список переменных, получающих значения на каждом шаге цикла. Список может состоять из одной или нескольких переменных, разделённых запятыми. Первую в списке переменную называют управляющей переменной цикла. Когда эта переменная получает возвращённое итератором значение nil, цикл завершается. Остальные переменные на ход выполнения цикла влияния не оказывают;
<explist> — список выражений, разделённых запятыми. Обычно список состоит из единственного выражения — вызова функции-фабрики итераторов. Такая функция возвращает функцию-итератор, состояние и начальное значение управляющей переменной цикла.