원 클라우드 더블 어드밴스 기회 이동 평균 추세 추종 전략


생성 날짜: 2023-12-12 16:11:09 마지막으로 수정됨: 2023-12-12 16:11:09
복사: 0 클릭수: 548
avatar of ChaoZhang ChaoZhang
1
집중하다
1621
수행원

원 클라우드 더블 어드밴스 기회 이동 평균 추세 추종 전략

개요

일구리 이중 앞당기기 기회 평선 트렌드 추적 전략은 인지도 지표 일구리 도표에 기반한 트렌드 추적 전략이다. 이 전략은 일구리 도표의 전환선을 앞당겨 구매 신호를 발신하고, 트렌드의 앞당기기 잡기를 구현한다. 동시에, 전략은 또한 평선의 트렌드 판단을 통합하여, 다층 확인을 하고, 가짜 돌파구를 피한다.

전략 원칙

이 전략은 다음과 같은 몇 가지 요인에 기반합니다.

  1. 변환 라인 (Conversion Line) 과 기준 라인 (Base Line) 을 사용하여 하나의 클라우드 지도를 구성하고, 26주기의 위치 이동으로 클라우드 지도를 니다.

  2. 클라우드 그래프 상단 궤도를 넘으면 구매 신호를 발송하고, 클라우드 그래프 하단 궤도를 넘으면 판매 신호를 발송한다.

  3. 가짜 브레이크를 필터링하기 위해, 현재 종식 가격이 전환선과 기준선의 최대값과 최소값을 동시에 뚫을 것을 요구한다.

  4. 스톱 라인은 입점 가격의 5%로 설정되어 있으며, 닫을 수 있다.

이러한 다중 필터링을 통해 트렌드 전환점을 효과적으로 식별하고 새로운 거래 기회를 신속하게 잡을 수 있습니다. 또한 엄격한 돌파구 필터링은 잘못된 신호의 발산을 줄일 수 있습니다.

전략적 이점

이 전략에는 다음과 같은 장점이 있습니다.

  1. 한 클라우드 그래프의 전환선은 명백한 선행 특성이 있어, 트렌드의 전환을 더 일찍 포착할 수 있다.
  2. 융합 평선 판단으로, 야간 틈으로 인한 가짜 돌파구를 방지한다.
  3. 다중 조건 필터링은 가짜 신호를 줄이고 신호 품질을 향상시킬 수 있다.
  4. 긴 선 조작, 후퇴가 상대적으로 작고, 정지 위치를 쉽게 찾을 수 있다.
  5. 다양한 품종에 적합하며, 특히 트렌드 품종에 적합하다.

전략적 위험

이 전략에는 다음과 같은 위험도 있습니다.

  1. 트렌드 시장은 더 잘 적용되며, 시장의 종합은 가짜 신호를 증가시킵니다.
  2. 한 클라우드 그래프의 파라미트 설정은 효과에 영향을 미치며, 다른 품종에 대해 최적화해야 한다.
  3. 스탠더드 위치 설정은 조심해야 하고, 함정을 피해야 한다.
  4. 신호 주파수가 낮아 짧은 라인 기회를 놓치는 것이 쉽다.

위험은 다음과 같은 방법으로 줄일 수 있습니다.

  1. 트렌드가 뚜렷한 품종을 선택하고, 거래된 품종을 피하십시오.
  2. 클라우드 그래프의 변수를 최적화하여 다른 주기들에 대한 최적의 변수 조합을 결정한다.
  3. 이동 상쇄 또는 시간 상쇄를 사용하여 단독 손실을 제어하십시오.
  4. 다른 지표와 결합하여 신호 방출 주파수를 증가시킬 수 있다.

전략 최적화

이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.

  1. 포지션 관리 메커니즘을 추가합니다.strategy.position_size창고 건설 비율을 제어한다.

  2. : : :security()류 풀을 필터링하고 트렌드를 자동으로 인식하는 정도.

  3. 이동식 상쇄 또는 부분 상쇄를 설정하여 위험을 더욱 제어하십시오.

  4. 다른 지표들, 예를 들어, 브린라인, RSI 등과 결합하여, 다중 지표 거래 시스템을 구축하여, 신호의 질을 향상시킨다.

  5. 기계 학습 방법을 적용하여 트레이닝을 통해 구매 신호의 신뢰성을 판단하고 주문 수를 동적으로 조정합니다.

요약하다

한 클라우드 듀얼 미리 알 기회 평선 트렌드 추적 전략은 하나의 클라우드 그래프에 의해 트렌드를 실현하는 선제 판단, 다시 통합 평선 다층 필터를 통해 고품질 거래 기회를 효과적으로 식별 할 수 있습니다. 전략은 안정적이며, 최적화 공간이 넓으며, 실 디스크 거래에 널리 적용 할 수 있습니다.

전략 소스 코드
/*backtest
start: 2022-12-05 00:00:00
end: 2023-12-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © QuantCT

//@version=4
strategy("Ichimoku Cloud Strategy Idea",
         shorttitle="Ichimoku", 
         overlay=true,
         pyramiding=0,     
         default_qty_type=strategy.percent_of_equity, 
         default_qty_value=99, 
         initial_capital=1000,           
         commission_type=strategy.commission.percent, 
         commission_value=0.1)

// ____ Inputs

conversion_period = input(9, minval=1, title="Conversion Line Period")
base_period = input(26, minval=1, title="Base Line Period")
lagging_span2_period = input(52, minval=1, title="Lagging Span 2 Period")
displacement = input(26, minval=1, title="Displacement")
long_only = input(title="Long Only", defval=false)
slp = input(title="Stop-loss (%)", minval=1.0, maxval=25.0, defval=5.0)
use_sl = input(title="Use Stop-Loss", defval=false)

// ____ Logic

donchian(len) => avg(lowest(len), highest(len))

conversion_line = donchian(conversion_period)
base_line = donchian(base_period)
lead_line1 = avg(conversion_line, base_line)
lead_line2 = donchian(lagging_span2_period)
chikou = close

chikou_free_long = close > high[displacement] and close > max(lead_line1[2 * displacement], lead_line2[2 * displacement])
enter_long = chikou_free_long and close > max(lead_line1[displacement], lead_line2[displacement])
exit_long = close < lead_line1[displacement] or close < lead_line2[displacement]

chikou_free_short = close < low[displacement] and  close < min(lead_line1[2 * displacement], lead_line2[2 * displacement])
enter_short = chikou_free_short and close < min(lead_line1[displacement], lead_line2[displacement])
exit_short = close > lead_line1[displacement] or close > lead_line2[displacement]

strategy.entry("Long", strategy.long, when=enter_long)
strategy.close("Long", when=exit_long) 
if (not long_only)
    strategy.entry("Short", strategy.short, when=enter_short)
    strategy.close("Short", when=exit_short) 

// ____ SL

sl_long = strategy.position_avg_price * (1- (slp/100))
sl_short = strategy.position_avg_price * (1 + (slp/100))
if (use_sl)
    strategy.exit(id="SL", from_entry="Long", stop=sl_long)
    strategy.exit(id="SL", from_entry="Short", stop=sl_short)

// ____ Plots

colors = 
 enter_long ? #27D600 :
 enter_short ? #E30202 :
 color.orange
 
p1 = plot(lead_line1, offset = displacement, color=colors,
	 title="Lead 1")
p2 = plot(lead_line2, offset = displacement, color=colors,
	 title="Lead 2")
fill(p1, p2, color = colors)
plot(chikou, offset = -displacement, color=color.blue)