
이 전략은 두 개의 다른 주기적 BBI의 교차 신호를 기반으로 거래하는 전략이다. 전략은 짧은 기간과 긴 기간 BBI의 교차를 비교하여 시장 추세 변화를 포착하여 거래 결정을 내린다.
이 전략은 두 개의 BBI 지표 그룹을 사용하며, 각 그룹은 4 개의 다른 기간의 간단한 이동 평균을 포함합니다. 그룹 A는 짧은 기간을 사용합니다. 12/24/48/80, 비교적 짧은 가격 추세를 포착하기 위해; 그룹 B는 긴 기간을 사용합니다. 120/240/480/600, 장기 기간의 추세를 확인하기 위해.
이 전략은 서로 다른 주기 BBI 지표의 교차를 비교하여 시장 추세를 포착하고 논리적으로 명확하고 실행하기 쉬운 특징이 있습니다. 그러나 전략의 안정성과 신뢰성을 높이기 위해 위험 제어 조치를 추가하고 다양한 시장 상황에 대한 매개 변수를 최적화하는 것이 필요합니다. 실물 거래 전에 충분한 피드백 검증을 수행하고 다른 기술 지표와 결합하여 거래 결정을 수행하는 것이 좋습니다.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-10 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// @version=6
strategy("BBI 多頭策略", overlay=true)
// 自訂參數設置
input_ma1_a = input(12, title="A組 MA1 週期")
input_ma2_a = input(24, title="A組 MA2 週期")
input_ma3_a = input(48, title="A組 MA3 週期")
input_ma4_a = input(80, title="A組 MA4 週期")
input_ma1_b = input(120, title="B組 MA1 週期")
input_ma2_b = input(240, title="B組 MA2 週期")
input_ma3_b = input(480, title="B組 MA3 週期")
input_ma4_b = input(600, title="B組 MA4 週期")
// 設定 A 組 BBI
ma1_a = ta.sma(close, input_ma1_a)
ma2_a = ta.sma(close, input_ma2_a)
ma3_a = ta.sma(close, input_ma3_a)
ma4_a = ta.sma(close, input_ma4_a)
bbi_a = (ma1_a + ma2_a + ma3_a + ma4_a) / 4
// 設定 B 組 BBI
ma1_b = ta.sma(close, input_ma1_b)
ma2_b = ta.sma(close, input_ma2_b)
ma3_b = ta.sma(close, input_ma3_b)
ma4_b = ta.sma(close, input_ma4_b)
bbi_b = (ma1_b + ma2_b + ma3_b + ma4_b) / 4
// 當 A 組 BBI 上穿 B 組 BBI 時,執行做多策略
long_condition = ta.crossover(bbi_a, bbi_b)
if (long_condition)
strategy.entry("Long", strategy.long)
// 當 A 組 BBI 下穿 B 組 BBI 時,平倉
close_condition = ta.crossunder(bbi_a, bbi_b)
if (close_condition)
strategy.close("Long")
// 繪製 BBI 指標
plot(bbi_a, color=color.blue, title="BBI A")
plot(bbi_b, color=color.red, title="BBI B")