
이 전략은 브린 벨트 지표를 사용하여 트렌드를 판단하고 RSI 지표와 결합하여 과도한 구매를 방지하고, ?? 실물 필터 및 색상 필터를 사용하여 거래 신호를 추가로 검증합니다. 전반적으로 이 전략의 주요 아이디어는 트렌드 초기 단계에서 구매하고, 트렌드 반전 전에 탈퇴하여 수익을 얻습니다.
이 전략은 먼저 브린 벨트 지표의 하도선선을 이용해서 가격이 하도선보다 낮을 때 관례적인 위치로 보는 기회를 이용한다. 과도한 구매를 피하기 위해, 전략은 또한 RSI 지표를 도입하여 RSI가 30보다 작으면 구매 신호를 생성한다. 또한, 전략은 ?? 엔티티 필터를 설정하여 현재 K선에 있는 엔티티가 지난 10개의 K선 평균 엔티티의 절반보다 크면 구매를 촉발한다. 마지막으로, 색 필터는 ?? 을 녹색으로 요구한다.
가격이 부린을 가로질러 하향으로, RSI가 30보다 작고, 실체가 충분할 때, 녹색 K선으로 구매 신호를 생성한다. 가격 닫기 시 개장보다 높고, 실체가 평균 실체의 절반보다 크면, 트렌드 반전 신호로, 이 때 평지 상장을 중지한다.
이 전략의 가장 큰 장점은 트렌드가 시작되는 시점을 성공적으로 판단하고 트렌드가 뒤집어지기 전에 퇴출하여 수익 잠재력이 높다는 것입니다. 구체적으로, 주요 장점은 다음과 같습니다:
부린띠 지표는 트렌드 방향을 정확하게 판단한다. 부린띠는 가격 변동의 범위를 맞추어 가격 움직임을 판단하며, 이 지표를 사용하여 트렌드의 시작과 끝을 효과적으로 결정할 수 있다.
RSI 지표는 과도한 구매를 방지한다. RSI는 과매매를 측정할 수 있으며, RSI와 결합하면 가격의 단기 조정 시 잘못된 구매를 방지할 수 있다.
실체 필터는 신호의 신뢰성을 증가시킨다. 더 큰 실체 필터는 더 강한 돌파구를 나타냅니다. 실체 필터는 강력한 돌파구를 확보할 수 있다.
색상 필터는 구매 시간을 확인한다. K 라인이 녹색일 때만 구매하고, 구매 시간의 정확성을 다시 확인할 수 있다.
구매 후 회전 녹색을 통해 판단 트렌드 반전. 거래자는 종종 회전 트렌드가 순환의 이라고 말하고, 회전 녹색을 통해 트렌드 반전의 시간을 알 수 있습니다.
이 전략에는 몇 가지 위험도 있습니다.
부린 띠 지표가 잘못된 신호를 발산할 수 있다. 시장이 흔들릴 때 부린 띠도 잘못된 돌파 신호를 발산할 수 있다.
중단이 고려되지 않아 손실이 확대된다. 이 전략은 중단이 설정되지 않아 판단 오류가 발생하면 더 큰 손실이 발생할 수 있다.
필터링 조건이 너무 엄격해서 구매 기회를 놓치게 됩니다. 여러 필터링 조건이 중첩되어 사용되면 구매 기회를 놓치게 될 수 있습니다.
매개 변수 최적화 및 재측정 효과에 의존한다. 매개 변수 및 필터 조건의 설정은 최적화 및 검증이 필요하며, 실디 디스크 효과도 검증이 필요하다.
회전 초록은 트렌드 반전이 불안정하다고 판단한다. K선 회전 초록은 트렌드 반전이 완전히 확실하지 않다.
대응 전략의 위험, 손실을 제어하기 위해 스톱을 설정할 수 있습니다. 필터 조건을 최적화하여 놓친 구매의 확률을 줄이십시오. 여러 지표의 구매 타이밍을 확인하여 성공률을 높여주세요. 또한 실물에서 재검토 결과를 확인해야합니다.
이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.
브린 띠의 변수를 최적화하여 최적의 변수 조합을 찾는다. 다양한 주기 길이를 테스트할 수 있고, 표준 차이의 배수를 테스트할 수 있다.
다른 RSI 대안으로 KDJ, 윌리엄스 등과 같은 다른 과매매 지표를 테스트하십시오.
이동 상쇄를 추가하여 위험을 제어하십시오. 회신 데이터에 따라 합리적인 이동 상쇄 전략을 설정하십시오.
최적화 필터링 조건 변수 . 테스트 다양한 크기의 필터링 및 주기 변수
다른 지표 확인 신호와 결합하여 시도하십시오. 예를 들어 수량 확인과 같은 지표입니다.
다양한 역전 신호를 테스트한다. 예를 들어, 평행선 교차와 같은 신호를 통해 트렌드 역전을 판단한다.
거래 유형, 기간에 대한 테스트. 다른 시장에서 전략의 효과를 평가하십시오.
이 전략은 전체적으로 강한 트렌드 추적 능력과 적응력을 가지고 있다. 핵심 장점은 부린 띠를 사용하여 트렌드 방향을 판단하고 RSI와 필터 조건을 사용하여 구매 시기를 보장하는 것이다. 그러나 또한 특정 위험이 있으며, 타겟팅 된 최적화 테스트가 필요합니다. 파라미터와 규칙을 검증 할 수 있다면 더 나은 실장 효과를 얻을 수 있습니다.
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//Donate: 3BMEXvKkuJLobJrcpMm12bKTZoCnojZTjh
//@version=2
strategy(title = "Noro's Wizard Strategy v1.1", shorttitle = "Wizard str 1.1", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 10)
//Settings
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
length = input(40, defval = 40, minval = 1, maxval = 200, title = "BB Period")
usebod = input(false, defval = false, title = "Use Body-Filter")
usecol = input(false, defval = false, title = "Use Color-Filter")
usersi = input(true, defval = true, title = "Use RSI-Filter")
showar = input(false, defval = false, title = "Show Arrows")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
//Bollinger
src = low
mult = 2
basis = sma(src, length)
dev = mult * stdev(src, length)
lower = basis - dev
plot(lower, color = lime, linewidth = 3, title="Bottom Line")
//Fast RSI Filter
fastup = rma(max(change(close), 0), 7)
fastdown = rma(-min(change(close), 0), 7)
rsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))
rsif = rsi < 30 or usersi == false
//Body Filter
nbody = abs(close - open)
abody = sma(nbody, 10)
body = nbody > abody / 2 or usebod == false
//Signals
up1 = low < lower and (close < open or usecol == false) and body and rsif
exit = close > open and nbody > abody / 2
//Arrows
needar = up1 and showar
plotarrow(needar ? 1 : na)
//Trading
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up1
if strategy.position_size < 0
strategy.close_all()
strategy.entry("Long", strategy.long, lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
strategy.close_all()