다중 지표 구매 및 판매 전략

저자:차오장, 날짜: 2023-10-18 11:36:38
태그:

img

전반적인 설명

이 전략은 유동 평균, 과잉 구매 과잉 판매 및 변동율 지표를 결합하여 과잉 판매의 경우 하락을 구매하고 과잉 판매의 경우 상승을 판매하여 트렌드를 추적합니다.

전략 논리

RSI와 스톡이 모두 과판/대입 구역에 있고 AO 오시일레이터가 반전 신호를 표시할 때 포지션을 취합니다. 구체적으로, RSI와 스톡이 낮을 때 (30와 20 이하) 그리고 AO가 음에서 긍정적으로 전환될 때 긴 포지션을 취하십시오. RSI와 스톡이 높을 때 (70과 80 이상) 그리고 AO가 긍정적에서 부정으로 전환될 때 짧은 포지션을 취하십시오. 시장 변동성에 따라 손실/이익 수준을 조정하기 위해 ATR 값을 기반으로 손해를 멈추고 이익을 취하십시오.

이 전략은 주로 네 가지 지표를 사용합니다.

  • AO 오시일레이터: 가격 동력을 반영하고 트렌드 반전을 식별하는 데 사용할 수 있습니다.
  • RSI: 과잉 구매/ 과잉 판매 수준을 나타냅니다. 30 이하는 과잉 판매 구역입니다.
  • 주식: 과잉 구매/ 과잉 판매 구역을 나타냅니다. 20 이하는 과잉 판매 구역입니다.
  • ATR: 최근 가격 변동성을 반영합니다.

AO가 반전 신호를 표시하고 RSI와 주가 모두 과판 / 과입 구역에있을 때 가격은 반전 될 수 있습니다. 이 시점에서 포지션을 취하십시오. 변동성에 따라 손실 / 이익 범위를 조정하여 함정에 빠지지 않도록 중지 손실을 설정하고 수익 가격을 취하기 위해 ATR을 사용하십시오.

장점

  • 신호를 확인하기 위해 여러 지표를 사용하며 단일 지표에서 잘못된 거래를 피하십시오.
  • 단일 손실을 제어하기 위해 변동성에 기초한 스톱 로스/이익을 설정합니다.
  • 단순하고 명확한 논리, 이해하기 쉽고 실행하기 쉽습니다.
  • 과잉 매수/ 과잉 판매 상황을 활용하여 반전을 포착합니다.

위험 과 해결책

  • AO는 잘못된 신호를 생성할 수 있습니다. 잘못된 거래를 피하기 위해 RSI와 스톡과 결합해야 합니다.
  • 고정된 매개 변수는 시장 변화에 적응하지 못할 수 있습니다. 매개 변수는 최적화되어야합니다.
  • 너무 가까운 스톱 손실은 빈번한 스톱을 유발할 수 있습니다. 스톱 범위를 느슨하게하거나 출구 전략을 사용할 수 있습니다.
  • 고정 취업이익은 너무 일찍 또는 늦게 출퇴할 수 있습니다. 적응 취업이익 또는 부분 출퇴를 사용할 수 있습니다.

위험을 줄이기 위해 아래와 같은 측면에서 최적화하십시오.

  1. 다양한 기간과 기기에 적응하도록 매개 변수를 최적화합니다.
  2. 트레일링 스톱, 부분 출구와 같은 스톱 손실 방법을 개선합니다.
  3. 잘못된 신호를 피하기 위해 입력 규칙을 최적화하십시오.
  4. 최적화 수익을 취하는 방법, 예를 들어 적응적인 수익을 취하는 방법, 트렌드에 따라 세분화

최적화 방향

아래의 측면은 전략에 최적화 될 수 있습니다:

  1. 서로 다른 값을 통과하여 매개 변수 설정을 최적화합니다.

  2. 잘못된 신호를 피하기 위해 입력 필터 조건을 추가합니다.

  3. 트레일링 스톱 로스 같은 스톱 로스 방법을 최적화합니다.

  4. 최적화, 수익을 창출하는 방법, 적응적 수익을 창출하는 방법

  5. 자율적으로 수익을 취해서 핵심 수준 근처에 있는 것을 추가해

  6. 리스크에 따라 포지션 크기를 조정하여 자금 관리를 최적화합니다.

  7. 다른 도구와 시간 프레임에 기초하여 매개 변수 및 스톱/이익 수준을 테스트하고 최적화합니다.

  8. 뉴스나 급격한 손실을 피하는 것과 같은 극단적인 사건들을 처리합니다.

요약

이 전략은 이동 평균, 과잉 구매 과잉 판매 및 변동성 시스템을 결합하여 낮은 가격으로 구매하고 높은 가격으로 판매하며 강한 트렌드를 따르는 능력을 갖는다. 그러나 고정 매개 변수 및 부적절한 스톱 손실과 같은 몇 가지 문제가 존재한다. 우리는 매개 변수 조정, 스톱 손실 개선, 필터를 추가하여 더 견고하게 만들기 위해 다양한 측면에서 최적화 할 수 있다. 실제 거래에서, 효과와 수익성을 극대화하기 위해 특정 도구와 기간에 기반하여 테스트하고 최적화해야합니다.


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

//@version=4

strategy("Buy&Sell Strategy depends on AO+Stoch+RSI+ATR by SerdarYILMAZ", shorttitle="Buy&Sell Strategy")
// Created by Serdar YILMAZ
// This strategy is just for training, its purpose is just learning code in pine script.
// Don't make buy or sell decision with this strategy.
// Bu strateji sadece pine script'te kodlamanın nasıl yapildigini ogrenmek icindir.
// Bu stratejiye dayanarak, kesinlikle al-sat islemleri yapmayin.

//AO

fast=input(title="Fast Length",type=input.integer,defval=5)
slow=input(title="Slow length",type=input.integer,defval=34)

awesome=(sma(hl2,fast)-sma(hl2,slow))*1000

plot(awesome, style=plot.style_histogram, color=(awesome>awesome[1]?color.green:color.red))

//Stoch

K=input(title="K",type=input.integer,defval=14)
D=input(title="D",type=input.integer,defval=3)
smooth=input(title="smooth",type=input.integer,defval=3)

k=sma(stoch(close,high,low,K),D)
d=sma(k,smooth)

hline(80)
hline(20)

plot(k,color=color.blue)

//RSI

rsisource=input(title="rsi source",type=input.source,defval=close)
rsilength=input(title="rsi length",type=input.integer,defval=10)

rsi=rsi(rsisource,rsilength)

hline(70,color=color.orange)
hline(30,color=color.orange)

plot(rsi,color=color.orange)

//ATR

atrlen=input(title="ATR Length", type=input.integer,defval=14)

atrvalue=rma(tr,atrlen)

plot(atrvalue*1000,color=color.green)

LongCondition=k<20 and rsi<30 and awesome>awesome[1]
ShortCondition=k>80 and rsi>70 and awesome<awesome[1]
if (LongCondition)
    stoploss=low-atrvalue
    takeprofit=close+atrvalue
    strategy.entry("Long Position", strategy.long)
    strategy.exit("TP/SL",stop=stoploss,limit=takeprofit)
    
if (ShortCondition)
    stoploss=high+atrvalue
    takeprofit=close-atrvalue
    strategy.entry("Short Position",strategy.short)
    strategy.exit("TP/SL",stop=stoploss,limit=takeprofit)
    
    

    
    




더 많은