
이 전략은 MACD 지표의 단기 트렌드를 식별하고 200 일 평균선에서 장기 트렌드를 판단하는 전략과 결합하여 MACD 골드 포크가 낮은 곳에서 작동하는 경우, 가격이 200 일 평균선을 돌파하면, 손실을 추적하는 방법으로 긴 포즈를 구축합니다. 이 전략은 주로 MACD 지표의 골드 포크 사다리 및 200 일 평균선의 위치 관계를 사용하여 잠재적인 기회를 식별합니다.
이 전략은 주로 MACD 지표와 200 일간 평균 선의 두 가지 기술 지표에 근거하여 판단됩니다. 구체적인 논리는 다음과 같습니다:
MACD 지표의 빠른 선, 느린 선 및 MACD 선을 계산한다. 그 중 빠른 선의 변수는 12일, 느린 선의 변수는 26일, 신호 선의 변수는 9일이다.
200일 지수 이동 평균 EMA를 계산한다.
MACD 빠른 느린 라인 포크 ((빠른 라인에서 느린 라인을 통과), MACD 라인은 마이너스 값 ((낮은 레벨 실행)), 마감 가격이 200 일선보다 높을 때, 더 많은 입장을하십시오.
입시 후, 입시 가격의 0.5%로 스톱 손실 가격을 설정하고, 입시 가격의 1%로 목표 가격을 설정합니다.
만약 가격이 스톱로스 또는 목표 가격에 도달하면 스톱로스 또는 스톱이 포지션을 탈퇴한다.
매일 종점 15시 15분 전 의무적으로 평지 퇴장한다.
거래 시간은 매일 9시부터 15시 15분까지입니다.
MACD 지표를 통해 단기 트렌드 방향과 강도를 판단하고, 200 일 평균선과 결합하여 장기 트렌드 방향을 판단하여, 트렌드 추적 작업을 구현한다. 중지 설정이 작고, 목표 가격이 크며, 수익을 극대화한다. 매일 강제 퇴장은 야간 위험을 제어한다.
이 전략은 다음과 같은 장점을 가지고 있습니다.
다중 지표 결합으로 판단 신호가 더 정확하다. MACD는 단기 경향과 강도를 판단하고, 200일 평균선은 주요 경향 방향을 판단한다.
스톱 손실은 작은 편이며, 약간의 회수에도 견딜 수 있다. 스톱 손실은 0.5%에 불과하며, 트렌드 중기 행세를 추적하는 데 도움이 된다.
목표 수익률이 높고, 수익 공간이 더 크다. 목표는 입점 가격의 1%이며, 트렌드 전략을 충족시키는 수익을 극대화한다.
매일 매진을 강제하면 하룻밤 사이에 큰 변동의 위험을 피하고 위험을 통제 할 수 있습니다.
전략적 아이디어는 간단하고 명확하며, 이해하기 쉽고 복제하기 쉽고, 초보자 학습에 적합하다.
이 전략에는 몇 가지 위험도 있습니다.
실패 위험. 급격한 상승 후 가격이 역전될 수 있고, 시간 내에 상쇄를 하지 못하여 큰 손실을 초래할 수 있다. 트레일러 상쇄 방식을 설정하여 가격에 따라 실시간으로 상쇄 위치를 조정할 수 있다.
트렌드 판단 실패의 위험. MACD 지표와 평균선은 잘못된 신호를 발산하여 트렌드 아닌 시장에 진입하여 손실을 초래할 수 있습니다. 거래량 지표와 결합하여 필터링을 고려하여 트렌드 가속 단계에서만 진입할 수 있습니다.
야간 변동 위험. 매일 강제 평점 메커니즘을 설정하더라도, 야간 동안 시장이 파열 될 가능성이 있으며, 큰 손실을 초래합니다. 이것은 거래자가 전체 포지션 규모를 제어하면서 일정 수준의 위험을 감수해야합니다.
이 전략은 다음과 같은 방향으로 최적화될 수 있습니다.
거래량 지표와 결합하여 실제 트렌드를 판단하여 충격 조정에서 잘못된 입장을 피하십시오. 예를 들어, 거래량이 이전 주기의 10%보다 크어야만 입장을 설정해야합니다.
다이내믹 스톱 모드를 설정한다. 진입 후 가격에 따라 실시간으로 스톱 포지션을 조정하고, 더 많은 수익을 위해 스톱을 추적한다.
MACD 파라미터 집합을 최적화하고, 다른 시장에서 다른 파라미터의 실제 효과를 테스트한다. 파라미터 설정은 신호의 감수성에 영향을 미칩니다.
100일선, 150일선 등 다른 평균선 지표를 테스트하여 어느 평균선이 트렌드와 일치하는지를 판단한다.
재입장 메커니즘을 추가한다. 의무적으로 매일 퇴장을 설정했기 때문에, 후속 행사를 놓칠 수 있다. 재입장 신호를 추가하고, 다음 날에도 계속 입장을 유지할 수 있다.
이 전략은 MACD 지표와 200 일 평균선 판단 신호를 통합하고, 단기 지표가 지속적인 신호를 발산할 때, 트렌드 입장을 취하고, 손실 중지 및 중지 메커니즘을 설정한다. 동시에 매일 평평한 포지션을 통제 하룻밤의 위험을 강제한다. 전략 아이디어는 간단하고, 쉽게 작동하며, 초보자 학습에 적합하며, 다른 전략에 모듈로 통합 할 수 있다. 그러나 오류 위험과 실패 위험을 판단하는 특정 트렌드가 존재하며, 이는 거래자의 특정 위험 감수성을 필요로 한다. 다음 단계는 손실 방식, 변수 선택, 거래량 과잉 등에서 최적화하여 전략 수익 인자를 향상시킬 수 있다.
/*backtest
start: 2023-11-12 00:00:00
end: 2023-12-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("MACD and 200 EMA Long Strategy", shorttitle="MACD200EMALong", overlay=true)
// Input parameters
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalLength = input(9, title="Signal Length")
ema200Length = input(200, title="200 EMA Length")
stopLossPercentage = input(0.5, title="Stop Loss Percentage")
targetPercentage = input(1, title="Target Percentage")
// Trading session
startHour = input(09, title="Start Hour", minval=0, maxval=23)
startMinute = input(00, title="Start Minute", minval=0, maxval=59)
endHour = input(15, title="End Hour", minval=0, maxval=23)
endMinute = input(15, title="End Minute", minval=0, maxval=59)
// Calculate MACD
[macdLine, signalLine, _] = macd(close, fastLength, slowLength, signalLength)
// Calculate 200-period EMA
ema200 = ema(close, ema200Length)
// Conditions for entering a long position
longCondition = crossover(macdLine, signalLine) and macdLine < 0 and close > ema200 and hour < 13
// Calculate stop loss and target levels only once at the entry
var float stopLossLevel = na
var float targetLevel = na
if (longCondition)
stopLossLevel := close * (1 + stopLossPercentage / 100)
targetLevel := close * (1 + targetPercentage / 100)
// Trading session condition
intradayCondition = true
// Strategy logic
strategy.entry("Long", strategy.long, when=longCondition and intradayCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=stopLossLevel, profit=targetLevel)
// Force exit if the current close is below the stop loss level
if (not na(stopLossLevel) and close < stopLossLevel)
strategy.close("Long")
// Exit the trade if the current close is greater than or equal to the target level
if (not na(targetLevel) and close >= targetLevel)
strategy.close("Long")
// Manually force exit at 3:15 PM
if (hour == 15 and minute == 15)
strategy.close("Long")
// Plotting the EMA, target, and stop loss on the chart
plot(ema200, color=color.blue, title="200 EMA")
plot(stopLossLevel, color=color.red, title="Stop Loss", linewidth=2)
plot(targetLevel, color=color.green, title="Target", linewidth=2)
// Plot entry arrow
plotshape(series=longCondition and intradayCondition, title="Long Entry", color=color.green, style=shape.triangleup, location=location.belowbar)