여기 제가 여러분들의 요청에 따라 글을 쓰려고 했던 글이 있습니다.
이 전략은 123 형태 반전 전략과 수면 힘 지표 전략을 통합하여, 둘 다 동방향 상장 또는 하위 신호가 발생하면 거래 신호를 발생시키고, 돌파 반전 거래 전략에 속한다.
이 전략은 두 부분으로 구성되어 있습니다.
2일 연속으로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 3일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 3일째로 하락한 후 4일째로 하락한 후 4일째로 하락한 후 3일째로 하락한 후 4일째로 하락한 후 3일째로 하락한
파워 지표는 다공력 대조를 반영하며, 지표가 설정된 판매 경계선보다 크면 판매 신호를 발생시키고, 지표가 설정된 구매 경계선보다 작으면 구매 신호를 발생시킨다.
합성 신호의 경우, 둘 다 동방향 신호를 주면, 실제 거래 신호를 생성한다.
반전 신호와 지표 필터링을 결합하여 가짜 돌파를 방지하고 신호 품질을 향상시킵니다.
다양한 시기가 적용되며, 다양한 시장 환경에 적응할 수 있습니다.
구성 요소 전략은 단독으로 사용할 수 있고, 전략 모듈화 설계도 함께 사용할 수 있다.
역전 신호가 회귀 깊이가 큰 경우 발생할 수 있다.
파워 지표 파라미터 설정은 반복 테스트를 통해 최적화된다.
다인자 통합 전략의 파라미터를 조정하는 것은 복잡하며, 많은 역사 데이터 테스트가 필요합니다.
더 많은 데이터 소스를 연결하여 더 오랜 기간 동안 더 풍부한 데이터를 얻을 수 있습니다.
기계 학습 방법을 적용하여 자동 검색 및 평가 파라미터 콤비 .
단편적 손실을 통제하기 위해 손해 방지 장치를 추가하십시오.
이 전략은 역기술 분석 및 양적 지표를 종합적으로 적용하여, 이중 확인을 통해 신호 품질을 향상시키고, 모듈화도가 높고, 확장성이 강하며, 실용형 전략에 속한다. 후속에는 더 많은 첨단 기술 수단을 도입하여 최적화하여 더 복잡한 시장 환경에 적응 할 수 있다.
/*backtest
start: 2023-11-13 00:00:00
end: 2023-11-20 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 29/05/2019
// This is combo strategies for get
// a cumulative signal. Result signal will return 1 if two strategies
// is long, -1 if all strategies is short and 0 if signals of strategies is not equal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// Bear Power Indicator
// To get more information please see "Bull And Bear Balance Indicator"
// by Vadim Gimelfarb.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
BearPower(SellLevel, BuyLevel) =>
value = iff (close < open ,
iff (close[1] > open , max(close - open, high - low), high - low),
iff (close > open,
iff(close[1] > open, max(close[1] - low, high - close), max(open - low, high - close)),
iff(high - close > close - low,
iff (close[1] > open, max(close[1] - open, high - low), high - low),
iff (high - close < close - low,
iff(close > open, max(close - low, high - close),open - low),
iff (close > open, max(close[1] - open, high - close),
iff(close[1] < open, max(open - low, high - close), high - low))))))
pos = 0.0
pos := iff(value > SellLevel, -1,
iff(value <= BuyLevel, 1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Bear Power", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SellLevel = input(30)
BuyLevel = input(3)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBearPower = BearPower(SellLevel, BuyLevel)
pos = iff(posReversal123 == 1 and posBearPower == 1 , 1,
iff(posReversal123 == -1 and posBearPower == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? red: possig == 1 ? green : blue )