В этой статье подробно объясняется среднесрочная долгосрочная количественная стратегия торговли с использованием полос Боллинджера.
I. Логика стратегии
Стратегия в основном использует следующие индикаторы полос Боллинджера:
Вычислить скользящую среднюю цену в качестве базовой за определенный период.
Вычислите стандартное отклонение цены и умножьте его на фактор диапазона.
Средний диапазон ± составляет верхнюю и нижнюю полосы.
Прорыв цены через диапазоны генерирует торговые сигналы.
Конкретная логика торговли:
Когда цена пробивается через нижнюю полосу, генерируется сигнал покупки, чтобы занять длинные позиции.
Когда цена переходит верхний диапазон, генерируется сигнал продажи, чтобы занять короткие позиции.
Приобретение прибыли и остановка убытков устанавливаются в фиксированных процентах, чтобы зафиксировать прибыль и убытки.
В целом, стратегия определяет среднесрочные и долгосрочные тенденции путем выявления ценовых прорывов полос Боллинджера.
II. Преимущества стратегии
Основными преимуществами этой стратегии являются:
Во-первых, полосы Боллинджера позволяют выявить перепады и переломы цен для отслеживания среднесрочных и долгосрочных тенденций.
Во-вторых, прямая установка стоп-лосса и установка прибыли помогают в разумном управлении деньгами.
Наконец, простые и понятные правила облегчают реализацию и оптимизацию этой стратегии.
III. Потенциальные риски
Однако следует отметить следующие риски:
Во-первых, полосы должны быть оптимизированы именно для стабильных сигналов.
Во-вторых, стоп-лосс, установленный слишком маленькими рисками, недостаточной прибылью, в то время как слишком большой увеличивает риск.
Наконец, необходимо предотвратить чрезмерную частоту торговли.
IV. Резюме
В целом, в этой статье объяснена среднесрочная количественная стратегия торговли с использованием полос Боллинджера для отслеживания тренда. Она может отслеживать ценовые тенденции в среднесрочной и долгосрочной перспективе, но требует тонкой настройки интервалов полос и уровней остановки потери. В целом она обеспечивает относительно простой и интуитивно понятный подход к отслеживанию тренда.
/*backtest start: 2023-08-14 00:00:00 end: 2023-09-13 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //------------------------------------ // // 『おすすめストラテジーSS1』 // 『BitMEX XBTUSD 30分足向け中長期用ストラテジー』 // 本番用ストラテジーファイル // // // //------------------------------------ //【説明】 // 『おすすめストラテジーSS1』のPineスクリプトです。 //------------------------------------ //@version=3 // strategy(title = "『おすすめストラテジーSS1』", shorttitle="Strategy1", initial_capital=1200000, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.05, overlay=true) //------------------------------------ // //ストラテジーロジック // //------------------------------------ source = close length = input(51, minval = 1, title = "移動平均") mult = input(3.01, minval = 0.001,step=0.01, maxval = 10, title = "マルチ") Rikaku = input(14.2, minval = 0.1, step=0.1,maxval = 100, title = "利確(%)") Songiri = input(99, minval = 0.1, maxval = 100, title = "損切(%)") base = sma(source, length) range = mult * stdev(source, length) upper = base + range lower = base - range short_cond = crossover(source, lower) long_cond = crossunder(source, upper) cl = 0.0 cl := na(cl[1]) ? sma(source, length) : (cl[1] * (length - 1) + source) / length plot(cl, color=black) up_plot = plot(upper, color=blue) low_plot = plot(lower, color=red) fill(up_plot, low_plot,color=#009900) //------------------------------------ // //オーダー処理 // //------------------------------------ if (long_cond) strategy.entry("Long_Entry", strategy.long, oca_name="BollingerBands", comment="Long") //BitFlyerのようなJPY建ての場合は以下のコードを使います。他の通貨ペアにする場合も1ティックが異なるため桁数の変更が必要です。 //strategy.exit("LE Exit", "BBandLE", profit = close*(Rikaku/100)*100, loss = close*(Songiri/100)*100, comment="Close") strategy.exit("Long_Exit", "Long_Entry", profit = close*(Rikaku/100)*10, loss = close*(Songiri/100)*10, comment="LongClose") if (short_cond) strategy.entry("Short_Entry", strategy.short, oca_name="BollingerBands", comment="Short") //BitFlyerのようなJPY建ての場合は以下のコードを使います。他の通貨ペアにする場合も1ティックが異なるため桁数の変更が必要です。 //strategy.exit("SE Exit", "BBandSE", profit = close*(Rikaku/100)*100, loss = close*(Songiri/100)*100, comment="Close") strategy.exit("Short_Exit", "Short_Entry", profit = close*(Rikaku/100)*10, loss = close*(Songiri/100)*10, comment="ShortClose")