이 전략은 일일 수익 목표와 함께 고정 스톱 로스 및 트레일링 스톱을 결합한 이중 이동 평균 크로스오버를 기반으로 한 내일 거래 시스템입니다. 이 전략은 주로 빠르고 느린 이동 평균의 크로스오버를 사용하여 구매 및 판매 신호를 생성하고 있으며, 동시에 위험을 제어하고 스톱 로스 및 수익 목표를 통해 수익을 잠금합니다.
이동 평균 계산: 이 전략은 사용자 정의 기간에 기반한 빠른 SMA와 느린 SMA를 사용하는 두 가지 간단한 이동 평균 (SMA) 을 사용합니다.
무역 신호 생성:
위험 관리:
일일 수익 목표:
시각화:
트렌드 추적: 트렌드의 시작에 입력하는 것을 돕는 시장 트렌드를 캡처하기 위해 이동 평균 크로스오버를 사용합니다.
리스크 제어: 고정 스톱 로스 및 트레일링 스톱을 통해 각 거래 및 전체에 대한 위험을 효과적으로 제어합니다.
이윤 관리: 일일 이윤 목표는 위험 노출을 제어하고 실현 된 이윤을 보호하는 데 도움이됩니다.
유연성: 사용자가 이동 평균 기간, 스톱-러스 금액 및 수익 목표와 같은 주요 매개 변수를 다른 시장 조건에 적응하도록 조정할 수 있습니다.
시각 지원: 직관적으로 그래프에 이동 평균과 무역 신호를 표시하여 분석 및 백테스팅을 용이하게합니다.
빈번한 거래: 불안정한 시장에서 과도한 잘못된 신호를 생성하여 빈번한 거래와 수수료 증가로 이어질 수 있습니다.
뒤떨어진 성격: 이동 평균은 본질적으로 뒤떨어진 지표이며, 잠재적으로 매우 변동적인 시장에서 너무 느리게 반응합니다.
고정 스톱 로스 리스크: 고정 통화 스톱 로스는 변동성이 있는 시장에서 충분히 유연하지 않을 수 있습니다.
일일 목표 제한: 의무적인 일일 목표가 중요한 시장 기회를 놓칠 수 있습니다.
매개 변수 민감성: 전략 성능은 매개 변수 설정에 매우 민감할 수 있으며, 자주 최적화를 요구합니다.
동적 매개 변수 조정: 시장 변동성에 따라 이동 평균 기간 및 스톱 로스 수준을 자동으로 조정하는 것을 고려하십시오.
추가 필터: 잘못된 신호를 줄이기 위해 추가 기술 또는 시장 정서 지표를 도입하십시오.
시간 필터링: 시장을 열고 닫는 것과 같은 매우 변동적인 시기를 피하기 위해 시간 필터를 구현하십시오.
포지션 관리: 시장 조건과 계정 성과에 따라 거래 크기를 조정하는 역동적인 포지션 크기를 구현합니다.
멀티 타임프레임 분석: 입시 시기의 정확성을 향상시키기 위해 장기 트렌드 분석을 포함합니다.
기계 학습 최적화: 매개 변수 선택 및 신호 생성 프로세스를 최적화하기 위해 기계 학습 알고리즘을 활용합니다.
일일 이익 목표와 함께 두 번째 이동 평균 크로스오버 전략은 고전적인 기술 분석과 현대적인 위험 관리 기술을 결합한 거래 시스템이다. 간단한 그러나 효과적인 이동 평균 크로스오버를 통해 시장 트렌드를 포착하고 있으며, 위험 관리에 대한 스톱 손실 및 이익 목표가 보충됩니다. 전략의 강점은 단순성과 유연성, 그러나 후진 성격 및 매개 변수 민감성과 같은 이동 평균 시스템에 내재된 과제에도 직면합니다. 지속적인 최적화 및 동적 매개 변수 조정 및 다중 요소 분석과 같은 더 고급 기능의 도입을 통해이 전략은 다양한 시장 환경에서 안정적인 성능을 유지할 수있는 잠재력을 가지고 있습니다. 체계적인 거래 접근 방식을 추구하는 투자자에게는 이것이 고려해야 할 귀중한 기초 전략 프레임워크로 작용합니다.
/*backtest start: 2024-08-26 00:00:00 end: 2024-09-24 08:00:00 period: 2h basePeriod: 2h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("NQ Futures $200/day Strategy", overlay=true) // Input Parameters fastLength = input.int(9, title="Fast MA Length") slowLength = input.int(21, title="Slow MA Length") dailyTarget = input.float(200, title="Daily Profit Target (Set to 0 to disable)", step=0.01) stopLossAmount = input.float(100, title="Stop Loss Amount", step=0.01) trailOffset = input.float(20, title="Trailing Stop Offset", step=0.01) // Moving Averages fastMA = ta.sma(close, fastLength) slowMA = ta.sma(close, slowLength) // Crossover Conditions for Buy and Sell longCondition = ta.crossover(fastMA, slowMA) shortCondition = ta.crossunder(fastMA, slowMA) // Entry conditions if (longCondition) strategy.entry("Buy", strategy.long) if (shortCondition) strategy.entry("Sell", strategy.short) // Set Stop Loss and Trailing Stop if (strategy.opentrades > 0) strategy.exit("Exit Long", from_entry="Buy", stop=strategy.position_avg_price - stopLossAmount, trail_offset=trailOffset) strategy.exit("Exit Short", from_entry="Sell", stop=strategy.position_avg_price + stopLossAmount, trail_offset=trailOffset) // Conditional Daily Profit Target (disabled if dailyTarget is 0) if (dailyTarget > 0 and strategy.netprofit >= dailyTarget) strategy.close_all(comment="Daily Target Reached") // Plotting the moving averages on the main chart plot(fastMA, color=color.blue, title="Fast MA") plot(slowMA, color=color.red, title="Slow MA") // Plot "Long" and "Short" signals on the main chart plotshape(series=longCondition, title="Long Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Long") plotshape(series=shortCondition, title="Short Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Short") // Markers for entry on the price chart plotshape(series=longCondition, title="Buy Marker", location=location.belowbar, color=color.green, style=shape.triangledown, size=size.small) plotshape(series=shortCondition, title="Sell Marker", location=location.abovebar, color=color.red, style=shape.triangleup, size=size.small)