
동치안 자기 적응 이동 평균 거래 시스템은 가격 동향을 추적하는 정량 거래 전략이다. 이 전략은 동치안 통지 지표를 사용하여, 장선과 단선 이동 평균을 결합하여 가격 동향을 판단하고 추적하여 중장선 가격 동향을 포착하고, 트렌디스트 거래를 한다.
이 전략은 먼저 실제 파장을 계산한다. 실제 파장은 이전 K 선의 종결 가격에서 현재 K 선의 최고 가격과 최저 가격 사이의 가격 변화의 범위를 의미한다. 그리고 실제 파장의 긴 선의 간단한 이동 평균을 계산한다. 唐 통로의 대역으로.
가격 위에 긴 선 이동 평균을 대역폭과 짧은 선 이동 평균을 대역폭을 더할 때, 더 많이 한다. 가격 아래에 긴 선 이동 평균을 대역폭과 짧은 선 이동 평균을 대역폭을 더할 때, 공백한다. 평형 조건은 가격 아래의 대역폭이 증가하는 긴 짧은 선 이동 평균을 대역폭을 더 많이 한다. 가격 위에 짧은 선 이동 평균이 대역폭이 증가할 때, 공백한다.
이렇게 하면, 전략은 실제 파장의 동적으로 덩치안 통로의 대역폭을 조정하고, 이중 이동 평균 필터링과 결합하여, 중장선 가격 추세를 효과적으로 추적하고, 가짜 신호를 줄여서, 안정적인 장선 거래 기회를 얻을 수 있다.
이 전략에는 다음과 같은 장점이 있습니다.
실제 파장을 계산하여 채널 대역폭을 동적으로 조정하고, 사각지대를 피하여 시장 변화에 더 잘 적응할 수 있다.
이중 이동 평균과 결합된 판단으로, 잡음을 효과적으로 필터링하여 잘못된 신호를 줄일 수 있다.
중장기 트렌드를 추적하여 반복 거래를 줄이고 거래 빈도를 낮추고 장기간에 걸쳐 지속적인 수익 기회를 얻을 수 있습니다.
전략 논리는 간단하고 명확하며 구현하기 쉽으며, 오류 허용률이 높으며, 자동화 거래에 적합하다.
이 전략에는 위험도 있습니다.
장선거래는 단선조정 진입 시점을 파악하기 어렵다. 휘발성 지표와 같은 단선 상황을 적절히 결합하여 진입을 최적화 할 수 있다.
업계, 개인에 따라, 매개 변수가 최적화되어야 합니다. 동적으로 선호하는 매개 변수 조합을 고려할 수 있습니다.
급격한 사건으로 인해 중요한 추세 변화가 발생했을 때, 스톱더스 포인트는 적절하게 느려질 필요가 있습니다.
전체적으로 볼 때, 동치안 자동 적응 이동 평균 거래 시스템은 전체적으로 안정적이고, 간단하며, 실행하기 쉬운 계량화 전략이다. 이 전략은 동적 통로와 쌍평선 필터를 활용하여, 시장의 중장선 추세를 효과적으로 추적하고, 거래 빈도를 낮추고, 장기 주기 지속 수익을 얻을 수 있다. 또한, 최적화 파라미터 설정, 위험 예방, 갑작스러운 사건에 적응하기 위해 손실을 잘 조절하는 것에 주의를 기울여야 한다.
/*backtest
start: 2023-02-14 00:00:00
end: 2024-02-20 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/
// © dongyun
//@version=4
strategy("唐齐安移动平均交易系统", overlay=true)
longperiod = input(20,'长线')
shortperiod = input(5,'短线')
bandfactor = input(1.0,'')
TrueHigh = 0.0
TrueLow = 0.0
TrueRange = 0.0
TrueHigh := close[1] > high ? close[1] : high
TrueLow := close[1] < low ? close[1] : low
TrueRange := TrueHigh - TrueLow
AvgTrueRange = sma(TrueRange,longperiod)
MAlong = sma(close,longperiod)
MAshort = sma(close,shortperiod)
band = AvgTrueRange * bandfactor
if close > MAlong[1] + band[1] and close > MAshort[1] + band[1]
strategy.entry("Long", strategy.long, when=strategy.position_size < 1)
else
if close < MAlong[1] - band[1] and close < MAshort[1] - band[1]
strategy.entry("Short", strategy.short, when=strategy.position_size > -1)
if close < MAlong[1] - band[1] or close < MAshort[1] - band[1]
strategy.close("Long", when=strategy.position_size > 0)
else
if close > MAlong[1] + band[1] or close > MAshort[1] + band[1]
strategy.close("Short", when=strategy.position_size < 0)