Количественная торговая стратегия, основанная на высоких и низких скользящих средних


Дата создания: 2023-09-19 15:53:55 Последнее изменение: 2023-09-19 15:53:55
Копировать: 0 Количество просмотров: 626
1
Подписаться
1617
Подписчики

Обзор

Стратегия определяет время покупки и продажи, рассчитывая простые движущиеся средние значения высоких и низких точек и сравнивая их с текущими закрывающими ценами. Ее целью является захват сигналов о прорыве цены средней линии, чтобы получить ранние шансы на тенденцию.

Стратегический принцип

  1. Вычислить простой скользящий средний с высотой 4

  2. Вычислить простой скользящий средний с низкой точкой длины 4

  3. Повышение входа, когда конечная цена пересекает среднюю отметку

  4. Провести открытый вход, когда цена закрытия пробивает среднюю отметку от нижней точки

  5. Управление рисками с помощью фиксированных стоп-стоп стратегий

Анализ преимуществ

  1. Простые показатели, которые легко понять

  2. Вовремя поймать сигнал о прорыве цены

  3. Это позволяет быстро отфильтровывать часть шума и определять тенденции.

  4. Малый объем вычислений позволяет снизить затраты на эксплуатацию стратегии

  5. Стратегия, основанная на совместимости, для расширения

Анализ рисков

  1. Необходимо установить разумные параметры, чтобы избежать чрезмерной чувствительности

  2. Риски, связанные с крупным прорывом

  3. Существует определенная степень риска шоковой арбитражи.

  4. Невозможно автоматически настроить положение стоп-стоп

  5. Трудно определить длительность тенденции

Направление оптимизации

  1. Тестирование влияния различных параметров на качество сигнала

  2. Увеличение фильтрационных условий для обеспечения эффективности прорыва

  3. Анализ тенденций поможет избежать ловушки

  4. Разработка стратегии динамического остановки убытков

  5. Оптимизация механизма хранения убытков, повышение вероятности успеха стратегии

  6. Прочность стратегии в различных циклах тестирования

Подвести итог

Эта стратегия дает основные трендовые торговые идеи, используя простые индикаторы для определения ценовой динамики. Ее торговые логики являются расширяемыми и могут быть развиты в более стабильную количественную систему. В целом, эта стратегия проста в использовании и подходит для вступления в количественную торговлю.

Исходный код стратегии
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-13 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("HiLo", overlay=true)

// Testing a specific period
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2017, "Backtest Stop Year")
testStopMonth = input(5, "Backtest Stop Month")
testStopDay = input(1, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false


//HiLo Strategy
length = input(4, minval=0)
displace = input(0, minval=0)
highsma = sma(high, length)
lowsma = sma(low, length)

longCondition = close > highsma[displace]
if (longCondition)
    strategy.entry("long", true)

shortCondition = close < lowsma[displace]
if (shortCondition)
    strategy.entry("short", false)

// Exit seems with a problem. it keeps saying the order's limit (2000) was reached even if I back test it just for a day. 
// If the two lines bellow are commented, then it it works. Anyone? Any idea what's wrong?

// strategy.exit("exit", "long", profit=10, loss=5)
// strategy.exit("exit", "short", profit=10, loss=5)