이중 이동 평균 확인 장점 라인 전략

저자:차오장, 날짜: 2024-01-23 10:49:57
태그:

img

전반적인 설명

이 전략은 Aroon 지표와 선형 회귀 이동 평균 (LSMA) 라인의 이중 확인을 통해 거래 신호를 생성하는 장기 트렌드를 따르는 전략입니다. 중장기 트렌드 거래에 적합합니다.

전략 원칙

특히 거래 신호를 생성하는 규칙은 다음과 같습니다.

장점

  1. 트렌드를 결정하기 위해 Aroon 표시기를 사용하여 소음 간섭을 피합니다.
  2. 가짜 브레이크오웃을 필터링하기 위해 LSMA 라인을 추가합니다.
  3. 더 넓은 시장의 장기적인 상승과 일치하는 단기적
  4. 간단한 매개 변수, 쉽게 구현

위험성

  1. 고정된 매개 변수는 과도한 부착으로 이어질 수 있습니다.
  2. 트렌드가 역전될 때 적시에 손실을 줄이는 것이 어렵습니다.

최적화 방향

  1. 하락하는 시장에서 이익을 얻기 위해 단축 기회를 추가하는 것을 고려
  2. 다른 사이클 매개 변수를 가진 시험 지표
  3. 자동으로 매개 변수를 최적화하기 위해 기계 학습 모듈을 추가

요약


/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 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/
// © exlux99

//@version=4

strategy(title = "Aroon Strategy long only", overlay = true,  pyramiding=1,initial_capital = 100, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.1)

//Time
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2010, title = "From Year", minval = 1970)
 //monday and session 
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2021, title = "To Year", minval = 1970)

startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true

//INPUTS

length = input(15, minval=1, title="Aroon Legnth")
upper = 100 * (highestbars(high, length+1) + length)/length
lower = 100 * (lowestbars(low, length+1) + length)/length

lengthx = input(title="Length LSMA", type=input.integer, defval=20)
offset = 0//input(title="Offset", type=input.integer, defval=0)
src = input(close, title="Source")
lsma = linreg(src, lengthx, offset)


long = crossover(upper,lower) and close > lsma
longexit = crossunder(upper,lower) and close < lsma

if(time_cond)
    strategy.entry("long",1,when=long)
    strategy.close("long",when=longexit)


더 많은