이중동량전략은 주가가 연속적으로 상승하거나 하락하는 K선 형태를 식별하여 저가와 높은 판매의 목적을 달성한다. 그것은 간단한 지표 판단을 사용하여 구현하기 쉽고 중간 단선 거래에 적합하다.
이 전략은 크게 두 가지 지표에 기반을 두고 있습니다.K선 수그리고아래로 내려가는 K선。
위의 변수는 LongEnterAfter, LongExitAfter, ShortEnterAfter 및 ShortExitAfter를 조정하여 특정 거래 규칙을 결정할 수 있습니다.
이 전략은 주식 가격 동력의 변화를 포착하고, 매일 종결 가격의 하락 상황을 지속적으로 모니터링하여 진출 시기를 판단한다. 지표 매개 변수 설정의 K선 형태가 나타나면, 그에 따른 매매 또는 매매 평점 작업을 수행한다.
종합적으로, 이중동량전략의 핵심은 주가 가격의 단기 하락 경향을 식별하여 거래 방향과 시간을 결정하는 것이다. 그것은 간단하고 직접적이며, 매개 변수를 설정하여 전략의 적극성을 조정할 수 있다.
이중 동력 전략은 다음과 같은 장점이 있습니다.
일반적으로, 이중 동량 전략은 주식 가격 변화에 더 민감한 투자자에게 적합하며, 높은 동작 주파수를 추구한다. 그것은 개별 주식의 단기 운행을 포착하여 초과 수익을 얻을 수 있다. 매개 변수를 조정하여 전략의 주파수와 위험을 제어 할 수 있다.
이중 동력 전략에는 다음과 같은 위험도 있습니다.
위험을 통제하기 위해 다음과 같은 조치를 고려할 수 있습니다.
이 전략은 다음과 같은 점들을 고려하여 최적화할 수 있습니다.
트렌드를 판단하는 지표를 추가하고, 트렌드 종료시 잘못된 거래를 피한다. MACD, KDJ 등의 지표를 도입하여 큰 트렌드를 판단할 수 있다.
거래량 판단을 높이고, 거래량이 떨어질 때 매장하는 것을 피한다.
이동 스톱을 설정하여 수익을 잠그고 ATR을 최소 N배로 스톱을 추적할 수 있습니다.
피드백 파라미터 조합을 추가하여 최적의 파라미터를 찾아 안정성을 높인다.
알고리즘 거래 모듈을 추가하여 더 지능적인 주문 관리를 구현합니다.
더 효과적인 거래 신호를 찾아내기 위해 기계 학습 기술을 사용한다.
전반적으로, 주요 최적화 방향은 전략의 안정성을 높이고, 위험을 통제하고, 더 효과적인 알파를 발굴하는 것입니다. 동시에, 알고리즘 거래 능력을 강화하는 것도 중요합니다.
이중동량전략은 간단한 연속 상승 하락 K선 판단을 통해 주식 선택시 거래를 실현한다. 그것은 구현하기 쉽고, 변수 제어의 적극성을 조정할 수 있다. 주로 단기 수익을 추구하는 투자자에게 적합하며, 특히 중소형 시가총액 주식에는 적합하다. 동시에, 변수 오버 최적화, 스톱 로즈 설정, 거래량 변화와 같은 위험에 주의할 필요가 있다.
/*backtest
start: 2022-10-02 00:00:00
end: 2023-10-08 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
// strategy(title="simple momentum", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// ====================================
// STUDY AND STRATEGY
// Inputs
LongEnterAfter = input(title="enter long after X rising blocks", defval=2)
LongExitAfter = input(title="exit long after X falling blocks", defval=1)
ShortEnterAfter = input(title="enter short after X falling blocks", defval=2)
ShortExitAfter = input(title="exit short after X rising blocks", defval=1)
// Criteria
Valid = change(time)
LongEnter = Valid and rising(close, LongEnterAfter)
LongExit = Valid and falling(close, LongExitAfter)
ShortEnter = Valid and falling(close, ShortEnterAfter)
ShortExit = Valid and rising(close, ShortExitAfter)
// ====================================
// STRATEGY
TradeSinceYear = input(title="trade since year", defval=2017)
TradeSinceMonth = input(title="trade since month", defval=1)
if year > TradeSinceYear or (year == TradeSinceYear and month >= TradeSinceMonth)
strategy.entry("long", strategy.long, when = LongEnter)
strategy.close("long", when = LongExit)
strategy.entry("short", strategy.short, when = ShortEnter)
strategy.close("short", when = ShortExit)