평행선 교차 전략은 비교적 일반적인 거래 전략이다. 이 전략은 평행선의 황금 포크 죽은 포크 원칙을 적용하고, 이치모쿠 클라우드 그래프 지표와 SMA 평평한 이동 평균을 결합하여 보다 완전한 거래 시스템을 형성한다. 이 전략은 자동으로 주식 개시 포지션 작업을 수행할 수 있다.
이 전략은 주로 이치모쿠 지표의 전환선과 기준선을 비교하고, SMA 단기 및 장기 이동 평균선의 교차 상황을 통해 주식을 사고 판매하는 것을 판단한다.
구체적으로, 이치모쿠 지표의 전환선 (conversionLine), 기준선 (baseLine), 선도선 (leadLine1) 및 선도선 (leadLine2) 을 정의하고, 장기 SMA 이동 평균선 (ma1) 과 단기 SMA 이동 평균선 (ma2) 을 정의한다.
매입을 판단할 때, 전환선이 기준선보다 낮고, 단기평균선이 장기평균선보다 낮다는 조건이 동시에 충족되어야 한다. 즉, 평평선 금포크가 발생한다.
매각을 판단할 때, 전환선이 기준선보다 높고, 단기 평균선이 장기 평균선보다 높다는 조건이 동시에 충족되어야 한다. 즉, 평균선 사각이 발생한다.
또한, 코드는 몇 가지 보조 조건을 정의합니다. 예를 들어, 종점 가격이 전날보다 높다는 판단과, 평균선의 수치를 이용하여 미분한 다음 하나의 수로 평균선의 기울기를 판단합니다. 이것은 평균선의 교차의 강도와 방향을 판단할 수 있습니다.
이 전략은 여러 기술 지표의 장점을 통합하여 시장 추세를 더 잘 판단할 수 있습니다. 다음과 같은 장점이 있습니다:
이치모쿠 클라우드 그래프 자체는 트렌드에 대한 판단을 포함하고 있으며, SMA 평균선과 결합하면 비교적 강력한 트렌드 판단을 형성할 수 있다.
SMA 평균선 자체는 가격의 경향과 강도를 판단할 수 있고, 빠른 평균선과 교차하는 느린 평균선은 매매점을 판단할 수 있다.
“그때의 경우, 매출은 상반된 가격으로 결정됩니다”.
평균선 기울기의 계산은 평균선 교차의 힘에 대한 판단을 증가시켜 가짜 교차를 필터링할 수 있다.
전체적으로, 이 전략은 추세 판단에 더 정확하고, 불필요한 거래를 줄일 수 있으며, 최적화 할 여지가 있습니다.
이 전략에는 몇 가지 위험도 있습니다.
이치모쿠와 SMA 평균은 가격 변화를 적시에 반영할 수 없는 지연 현상이 발생할 수 있다.
여러 조건의 조합으로 판단하는 것은 전략의 복잡성을 증가시키고 또한 오류의 확률을 증가시킨다.
이 전략은 기술적인 지표만을 기반으로 하고 있으며, 주요 뉴스의 영향력을 판단할 수 없습니다.
이 전략에는 스톱로스 조건이 설정되어 있지 않아 손실이 확대될 위험이 있습니다.
이 전략은 특별 상황의 처리를 고려하지 않습니다.
잘못된 변수 설정은 정책 효과에도 영향을 미칩니다.
이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.
손실이 커지면 자동으로 중지할 수 있는 중지 조건을 설정한다.
중요한 뉴스 면에 대한 판단을 높여서 중요한 뉴스 면의 영향을 피하십시오.
거래 범위를 늘리거나 매개 변수를 조정하는 것과 같은 특별한 상황에 대한 판단을 추가합니다.
변수 조합을 테스트 최적화하여 최적의 변수를 찾습니다.
기계 학습 알고리즘을 추가하고, AI를 사용하여 변수 최적화 및 시장 판단을 수행합니다.
은 덩어리가 판단력을 높여서 가짜 돌파구를 막아줍니다.
이 자료는 “인터넷 사용률의 변화”와 “인터넷 사용률의 변화”와 같은 기본적인 지표들을 더 포함하고 있습니다.
종합적으로, 이 평행선 교차 전략은 이치모쿠 지표와 SMA 이동 평행선의 장점을 통합하여 비교적 완전한 주식 거래 전략을 형성한다. 이 전략은 트렌드를 판단하는 능력이 강하며, 트렌드 기회를 효과적으로 포착 할 수 있다. 그러나, 지연, 복잡성, 중지 손실의 부족 등과 같은 몇 가지 문제도 있다. 이것은 이 전략에 큰 최적화 공간을 제공하며, 중단 손실을 설정하고, 중요한 뉴스 면을 판단하고, 매개 변수를 최적화하는 등의 수단을 통해이 전략을 지속적으로 개선하여 안정적이고 신뢰할 수 있는 정량 거래 전략으로 만들 수 있다.
/*backtest
start: 2023-09-15 00:00:00
end: 2023-10-15 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
// strategy("Ichimoku+SMAsmoothed", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
//
conversionPeriods = input(9, minval=1, title="Conversion Line Periods"),
basePeriods = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement = input(26, minval=1, title="Displacement")
SMA1=input(title="SMA LONG",defval=21)
SMA2=input(title="SMA SHORT",defval=19)
p=ohlc4[1]
donchian(len) => avg(lowest(len), highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
//plot(conversionLine, color=#0496ff, title="Conversion Line")
//plot(baseLine, color=#991515, title="Base Line")
//plot(close, offset = -displacement, color=#459915, title="Lagging Span")
//p1 = plot(leadLine1, offset = displacement, color=green,
// title="Lead 1")
//p2 = plot(leadLine2, offset = displacement, color=red,
// title="Lead 2")
//fill(p1, p2, color = leadLine1 > leadLine2 ? green : red)
ma1=sma(p, SMA1)
ma2=sma(p, SMA2)
p_a = ma1*2
p_b = ma1
p_c = p_a - p_b
p_d = p_c/24
p_e = ma2*2
p_f = ma2
p_g = p_e - p_f
p_h = p_g/24
closelong = ohlc4<ohlc4[SMA1] and ohlc4<ohlc4[1]// and leadLine1<leadLine2 and p_h<p_d
if (closelong)
strategy.close("Long")
closeshort = ohlc4>ohlc4[SMA1] and ohlc4>ohlc4[1]// and leadLine1>leadLine2 and p_h>p_d
if (closeshort)
strategy.close("Short")
longCondition = ohlc4>ohlc4[1] and leadLine1>leadLine2 and p_h>p_d
if (longCondition)
strategy.entry("Long",strategy.long)
shortCondition = ohlc4<ohlc4[1] and leadLine1<leadLine2 and p_h<p_d
if (shortCondition)
strategy.entry("Short",strategy.short)