This trading system is quantitatively designed by Бао Юй. Мы команда, которая давно занимается исследованием количественных торговых стратегий.
В прошлом году мы добились отличных результатов в количественном конкурсе Tokeninsight.
Спасибо вам, сообщество FMZ, за предоставление такой платформы. Для того, чтобы лучше поддержать построение количественных сообществ, концепция и дизайнерские идеи этой стратегии теперь публикуются здесь. Надеюсь, вы сможете изучить дизайн и применение количественной торговли.
Вдохновение для системы количественной скорости печатания в основном из физики
Определение скорости в физике: расстояние, которое движется за единицу времени. Если рассматривать цену как расстояние, то на финансовом рынке скорость определяется как величина изменения цены за единицу времени.
Если цена сильно меняется за единицу времени, такой рынок обычно называют быстрым рынком; если изменения цены за единицу времени малы, такой рынок называют медленным рынком. Поэтому скорость - это естественный закон, который объединяет время и цену. Глубокое понимание скорости может помочь нам лучше понять рынок.
Если курс увеличивается, это означает, что энергия увеличивается и может эффективно предсказать тенденцию роста рынка.
Если ставка падает, это означает отказ от энергии, и риск устойчивости или падения рыночных условий может быть воспринят.
Каждая сделка использует определенное количество лотов для сделки, поэтому она называется системой торговли количественной ставкой.
Максимальная цена (HHV): самая высокая цена, достигнутая за определенный период. Наименьшая цена (LLV): самая низкая цена, достигнутая за определенный период. Движущаяся средняя (MA): линия, соединяющая среднюю цену закрытия за определенный период. Напряжение регрессии (SLOPE): Напряжение линейной регрессии с определенным периодом. (Это то, что мы называем скоростью)
Формула линейного уравнения OLS наклона:
Математическая формула очень сложная, но платформа FMZ уже написала для нас грамматическую формулу (SLOPE) языка M.
Мы видим, что алгоритм выглядит следующим образом:
Процесс немного сложнее, но не все должны думать об этом. Просто вызовите формулу прямо.
len:=35;//Design cycles
hh^^HHV(H,len);//Take the highest price in a certain period
ll^^LLV(L,len);//Take the lowest price in a certain period
hl2^^(hh+ll)/2;//Average of highest price and lowest price
avg^^MA(hl2,5);//Calculate the moving average line of the average
ss:SLOPE(avg,len);//Calculate the regression slope of the moving average line
С помощью дизайна показателей, мы можем видеть, что в основном графике, у нас есть самая высокая точка (желтая линия), самая низкая точка (зеленая линия), их средняя (красная линия), и сглаженная цена скользящий средний рассчитанный красной линией (толстая фиолетовая линия)
Затем мы можем рассчитать наклон регрессии ss на прилагаемой рисунке, который представляет собой рост и падение скорости скользящей средней.
Как видно на рисунке выше, зеленые стрелки указывают на точки наклона на самом низком склоне, а оранжевые стрелки указывают на точки наклона на самом высоком склоне.
Реакция вдоль диаграммы на линии k, и ослабление роста и ослабление падения также могут быть четко ощущены.
Если вы покупаете и продаете в точке перелома, вы можете эффективно управлять торговлей на ранней стадии, вместо того, чтобы преследовать рост или падение в высокой или низкой точке.
Повышающийся наклон означает, что рыночный импульс увеличивается, который может перестать падать или начать расти. Постоянное снижение наклона означает, что рыночный импульс слабый и может прекратить расти или начать падать.
Дизайн и выражение с использованием языка M следующие:
len:=35;//Design cycles
hh^^HHV(H,len);//Take the highest price in a certain period
ll^^LLV(L,len);//Take the lowest price in a certain period
hl2^^(hh+ll)/2;//Average of highest price and lowest price
avg^^MA(hl2,5);//Calculate the moving average line of the average
ss:SLOPE(avg,len);//Calculate the regression slope of the moving average line
ss<REF(ss,1),SPK;//When the slope becomes smaller, it indicates that the market momentum is weakened, close long positions and open short positions.
ss>REF(ss,1),BPK;//When the slope becomes larger, it indicates that the market momentum is enhanced, close short positions and open long positions.
AUTOFILTER;
Таким образом, мы завершили разработку этого алгоритма, и затем мы будем использовать систему для обратного тестирования ситуации в течение одного года.
Предметом рассмотрения является квартальный контракт btc;
Период обратного тестирования составляет с 1 января 2019 года по настоящее время, и срок составляет 1 час;
3 BTC для первоначального счета, комиссионная за обработку 0,05%;
Установите фиксированное количество 200 лотов на транзакцию.
По результатам обратной проверки можно увидеть, что этот доход относительно плавный и стабильный.
В этом обратном тесте в течение года было совершено 1261 транзакция; Ориентировочный доход 4,68 криптовалюты; Годовой доход составляет около 140%; Максимальное использование средств составляет 14%; Соотношение Шарпа 0,117.
Нажмите, чтобы перейти к стратегии копированияhttps://www.fmz.com/strategy/183416
Выше представлены некоторые идеи и содержание моего дизайна, ниже представлен весь код языка M, Для справки, изучения и исследования. Если вам нужно перепечатать, пожалуйста, укажите источник.
len:=35;//Design cycles
hh^^HHV(H,len);//Take the highest price in a certain period
ll^^LLV(L,len);//Take the lowest price in a certain period
hl2^^(hh+ll)/2;//Average of highest price and lowest price
avg^^MA(hl2,5);//Calculate the moving average line of the average
ss:SLOPE(avg,len);//Calculate the regression slope of the moving average line
ss<REF(ss,1),SPK;//When the slope becomes smaller, it indicates that the market momentum is weakened, close long positions and open short positions.
ss>REF(ss,1),BPK;//When the slope becomes larger, it indicates that the market momentum is enhanced, close short positions and open long positions.
AUTOFILTER;