듀얼 컬러 K-라인 추적 전략

저자:차오장, 날짜: 2023-10-11 14:53:41
태그:

요약

이 전략은 K 라인 색상의 변화를 관찰하여 시장 트렌드를 결정하고 그에 따라 장기 및 단위 포지션을 설정합니다. 전략 원칙은 간단하고 간단하며 단기 트렌드를 포착하는 것을 목표로합니다.

원칙

이 전략은 종료 가격과 개시 가격 사이의 관계를 기반으로 K 라인의 색상을 판단합니다. 개시 가격보다 큰 종료 가격은 빨간 K 라인이며 반대로 녹색 K 라인입니다.

같은 색의 K 선이 연속적으로 표시될 때 (조정 가능함)

  • 빨간색이라면 길게 가세요

  • 초록색이면 짧게 가세요

K선 색이 바뀌면 모든 위치를 닫으세요

장점

  • 이 원칙은 명확하고 간단하며 이해하기 쉽고 적용하기 쉽습니다.

  • 비교적 단기적인 경향을 추적하고 자주 거래할 수 있습니다.

  • K 라인의 수는 전략 감수성을 조정할 수 있습니다.

  • 거래 빈도를 줄이기 위해서만 롱 또는 쇼트를 할 수 있습니다.

  • 거래 시간 프레임은 특정 기간을 피하기 위해 설정 될 수 있습니다.

위험성

  • 트렌드 방향을 결정하지 못해 을 당할 위험이 있습니다.

  • 최적의 출입 시기를 결정하지 못함, 조기 출입 위험 또는 놓친 기회

  • 색상 변화로 역전될 위험은 반드시 실제 트렌드 변화를 나타내는 것은 아닙니다.

  • 단기적 추구는 과도한 거래 및 수수료 압력을 초래할 수 있습니다.

  • 부적절한 매개 변수 설정은 전략 성능의 저하로 이어질 수 있습니다.

최적화

  • 트렌드 판단 지표를 추가하는 것을 고려하여 역입입을 피하십시오. 예를 들어 MACD, KD.

  • 손실 위험을 줄이기 위해 후속 스톱 손실을 설정합니다.

  • 과도한 출구를 피하기 위해 출구 기준을 적절히 완화하십시오.

  • 진입 시기를 최적화하기 위해 다른 요인을 결합하십시오. 예를 들어, 증가하는 부피, 이전 최고치를 깨는 것.

  • 마켓 오더를 사용해서 미끄러짐의 영향을 줄이세요.

결론

이 전략은 가장 간단한 K-라인 기술 분석에서 시작하여 K-라인 색상을 판단하여 기본적인 트렌드 추적을 달성합니다. 장점은 단순성, 높은 거래 빈도 및 유연한 매개 변수 조정입니다. 그러나 트렌드의 품질을 결정할 수 없으므로 약간의 맹인이 있습니다. 트렌드 판단 지표를 추가하여 간단하게 유지함으로써 개선 할 수 있으며 이로 인해 전략 성능이 향상됩니다.


/*backtest
start: 2023-09-10 00:00:00
end: 2023-10-10 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//2018
//Noro

//@version=2
strategy("Noro's Candles Strategy v1.0", shorttitle = "Candles str 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
bq = input(2, defval = 2, minval = 2, maxval = 6, title = "Bars Q")

fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")

//Bars Q
bar = close > open ? 1 : close < open ? -1 : 0
gb = bar == 1
rb = bar == -1
redbars = bq == 2 and rb and rb[1] ? 1 : bq == 3 and rb and rb[1] and rb[2] ? 1 : bq == 4 and rb and rb[1] and rb[2] and rb[3] ? 1 : bq == 5 and rb[1] and rb[2] and rb[3] and rb[4] ? 1 : bq == 6 and rb[1] and rb[2] and rb[3] and rb[4] and rb[5] ? 1 : 0
greenbars = bq == 2 and gb and gb[1] ? 1 : bq == 3 and gb and gb[1] and gb[2] ? 1 : bq == 4 and gb and gb[1] and gb[2] and gb[3] ? 1 : bq == 5 and gb[1] and gb[2] and gb[3] and gb[4] ? 1 : bq == 6 and gb[1] and gb[2] and gb[3] and gb[4] and gb[5] ? 1 : 0

//Signals
up1 = redbars == 1
dn1 = greenbars == 1
exit = bar != bar[1]

if up1
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

if dn1
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
    
if time > timestamp(toyear, tomonth, today, 00, 00) or exit
    strategy.close_all()

더 많은