#공통, 전략
[설명]
ADX는 20 미만은 약한 추세 또는 횡보, 20 이상은 추세 시작.25 이상은 강력한 추세.
40 이상은 매우 강한 추세로 해석됩니다.
ADX는 추세의 방향(상승/하락)이 아니라 강도만을 나타내므로
장/단기 이평 배열로 추세를 파악하고 일정강도 이상일때 진입하는 내용입니다.
매수 : 이평 골드구간이고 ADX가 25이상이면 매수진입
매더 : 이평 데드구간이고 ADX가 25이상이면 매도진입
input : ShortPeriod(20),LongPeriod(60),adxPeriod(14);
input : 손절틱수(50), 익절틱수(50);
var : ShortMa(0), LongMa(0),adxv(0);
var : T(0);
//이평
ShortMa = ma(C, ShortPeriod);
LongMa = ma(C, LongPeriod);
//ADX값
adxv = ADX(adxPeriod);
//골드발생 T는 1
if CrossUp(ShortMa,LongMA) Then
T = 1;
//데드발생 T는 -1
if CrossDown(ShortMa,LongMA) Then
T = -1;
//골드구간에서 종가가 단기이평 위이고 ADX가 25이상이면 T는 2로 변경하고 매수
if T == 1 and C > Shortma and Adxv >= 25 Then
{
T = 2;
Buy();
}
//데드구간에서 종가가 단기이평 아래이고 ADX가 25이상이면 T는 -2로 변경하고 매도
if T == -1 and C < Shortma and Adxv >= 25 Then
{
T = -2;
Sell();
}
//매수진입 후 이평데드 청산
if MarketPosition == 1 and CrossDown(ShortMa,LongMa) then
ExitLong("TrendRevL",AtMarket);
//매도진입 후 이평골드 청산
if MarketPosition == -1 and CrossUp(ShortMa,LongMa) then
ExitShort("TrendRevS",AtMarket);
SetStopLoss(손절틱수*PriceScale,PointStop);
SetStopProfittarget(익절틱수*PriceScale,PointStop);
JavaScript
복사
