Hall 이동평균과 K-line을 기반으로 한 거래 전략


생성 날짜: 2023-09-21 10:31:58 마지막으로 수정됨: 2023-09-21 10:31:58
복사: 0 클릭수: 762
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

개요

이 전략의 핵심 아이디어는 홀 이동 평균 (Hull Moving Average, HMA) 과 K 선의 값을 비교하여 구매 및 판매 신호를 생성하는 것입니다. HMA가 K 선보다 높을 때 구매하고 HMA가 K 선보다 낮을 때 판매하십시오.

원칙

우선, 전략은 hma () 함수를 통해 일정 주기 HMA를 계산한다. 다음, 비교 기준으로 K 선의 상위 개시 가격을 취한다. HMA가 상위 K 선의 개시 가격보다 높으면 구매 신호가 발생하고, HMA가 상위 K 선의 개시 가격보다 낮으면 판매 신호가 발생한다.

전략의 입시 조건은, 가격이 HMA를 반대 방향으로 돌파했을 때만 진입한다. 즉, 가격이 HMA를 아래에서 돌파했을 때만 구매한다. 가격이 HMA를 위에서 돌파했을 때만 판매한다. 이것은 흔들리는 시장이 반복적으로 신호를 유발하는 것을 피할 수 있다.

전략의 출구 조건은 가격이 HMA의 다른 쪽으로 다시 떨어질 때 손실을 막는 것이다. 예를 들어, 구매 후 가격이 HMA를 넘어지면 손실을 막는 것이다.

전체적으로, 이 전략은 HMA의 평평한 특성을 활용하여 주요 트렌드 방향을 식별하여 신호를 생성한다. 동시에, 가격 돌파구를 요구하여 가짜 신호를 필터링하여 시장의 흔들림에 반복적으로 갇히지 않도록 한다.

우위 분석

  1. HMA를 SMA 대신 사용하면 트렌드를 더 잘 식별하고 흔들림을 필터링 할 수 있습니다.

  2. 뚫고 가는 메커니즘은 포지션에 걸리는 확률과 반복적으로 포지션을 열 수 있는 확률을 줄일 수 있다.

  3. 현재 가격 판단이 아닌 지난 K선 가격을 사용하여 역행 곡선 그리기를 피할 수 있다.

  4. 규칙은 간단하고 명확하며, 변수 최적화와 로봇 거래에 적합하다.

  5. 모든 품종과 주기에서 유연하게 적용할 수 있으며, 보편적입니다.

위험과 개선

  1. HMA 파라미터를 잘못 설정하면 잘못된 경향이나 과민성이 발생할 수 있다. 다른 주기 파라미터를 테스트하여 최적의 값을 찾을 수 있다.

  2. 단일 지표는 재검사 출 영역에서 돌파될 수 있으며, 다른 지표와 결합하여 필터링 신호를 고려할 수 있다.

  3. HMA 근처의 HMA에서 HMA는 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서 HMA에서

  4. 트렌드 방향과 강도를 판단할 수 없는 경우, 트렌드 분류 지표를 추가하는 것을 고려한다.

  5. 고정된 스톱포트는 위험과 수익의 큰 변동으로 이어지므로, 스톱포트 또는 자금 관리를 시도해 볼 수 있다.

요약하다

이 전략은 전체적으로 간단하고 실용적이며 핵심 아이디어는 명확하다. HMA를 사용하여 주 트렌드 방향을 판단하여 잘못된 신호를 돌파한다. 불안한 시장에서 반복적으로 포지션을 열 수 있습니다. 변수 최적화를 통해 좋은 효과를 얻을 수 있습니다. 그러나 단일 지표에 기반한 전략으로서 신뢰성 및 승률에는 한계가 있습니다. 다른 기술 지표 또는 자금 관리 방법과 함께 사용하는 것이 안정성을 크게 향상시킬 수 있습니다.

전략 소스 코드
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 2h
basePeriod: 15m
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/
// © SeaSide420. Any timeFrame/pair , Hull Moving Average vs Candle
//@version=4
strategy("Hull Moving Average vs Candle",shorttitle="HMA-vs-Candle",overlay=true,default_qty_type=strategy.percent_of_equity,default_qty_value=100,commission_type=strategy.commission.cash_per_order,commission_value=1.00,slippage=1)
Period=input(title="Hull MA Period",type=input.integer,defval=50,minval=1)
Resolution=input(title="Candle Resolution", type=input.resolution,defval="D")
Price=input(title="Source of Price",type=input.source,defval=open)
HMA=hma(Price,Period)
Candle=security(syminfo.tickerid,Resolution,Price,barmerge.gaps_off,barmerge.lookahead_off)
change_color=HMA>Candle?color.green:color.red
plot1=plot(Candle,color=change_color,title="Candle Line",linewidth=2,transp=50)
plot2=plot(HMA[1],color=change_color,title="Hull MA Line",linewidth=2,transp=50)
fill(plot1,plot2,color=change_color,transp=50)
strategy.close("BUY",when=Price<HMA and HMA<Candle,comment="close buy entry")
strategy.close("SELL",when=Price>HMA and HMA>Candle,comment="close sell entry")
if (Price>HMA and HMA>Candle and Price>Price[1])
    strategy.entry("BUY",strategy.long)
if (Price<HMA and HMA<Candle and Price<Price[1])
    strategy.entry("SELL",strategy.short)



//                                                                   /L'-, 
//                               ,'-.           /MM . .             /  L '-, 
//     .                    _,--dMMMM\         /MMM  `..           /       '-, 
//     :             _,--,  )MMMMMMMMM),.      `QMM   ,<>         /_      '-,' 
//     ;     ___,--. \MM(    `-'   )M//MM\       `  ,',.;      .-'* ;     .' 
//     |     \MMMMMM) \MM\       ,dM//MMM/     ___ < ,; `.      )`--'    / 
//     |      \MM()M   MMM)__   /MM(/MP'  ___, \  \ `  `. `.   /__,    ,' 
//     |       MMMM/   MMMMMM( /MMMMP'__, \     | /      `. `-,_\     / 
//     |       MM     /MMM---' `--'_ \     |-'  |/         `./ .\----.___ 
//     |      /MM'   `--' __,-  \""   |-'  |_,               `.__) . .F. )-. 
//     |     `--'       \   \    |-'  |_,     _,-/            J . . . J-'-. `-., 
//     |         __  \`. |   |   |         \    / _           |. . . . \   `-.  F 
//     |   ___  /  \  | `|   '      __  \   |  /-'            F . . . . \     '` 
//     |   \  \ \  /  |        __  /  \  |  |,-'        __,- J . . . . . \ 
//     |    | /  |/     __,-  \  ) \  /  |_,-     __,--'     |. .__.----,' 
//     |    |/    ___     \    |'.  |/      __,--'           `.-;;;;;;;;;\ 
//     |     ___  \  \     |   |  `   __,--'                  /;;;;;;;;;;;;. 
//     |     \  \  |-'\    '    __,--'                       /;;;;;;;;;;;;;;\ 
// \   |      | /  |      __,--'                             `--;;/     \;-'\ 
//  \  |      |/    __,--'                                   /  /         \  \ 
//   \ |      __,--'                                        /  /           \  \ 
//    \|__,--'                                          _,-;M-K,           ,;-;\ 
//                                                     <;;;;;;;;           '-;;;; 
//                                                                                        ~ priceless artwork by SeaSide420