커뮤니티
적합이동평균 예전에 구해주신것 조금 이상합니다...
2012-03-01 18:40:28
475
글번호 48422
2. 적합
INPUTS: PERIOD(200);
var : NOISE(0,data2), SIGNAL(0,data2), DIFF(0,data2), EFRATIO(0,data2),AMA(0,data2);
var : SMOOTH(1,data2), FASTEST(.6667,data2), SLOWEST(.0645,data2), ADAPTMA(0,data2);
DIFF = data2(ABS(CLOSE - CLOSE[1]));
IF CURRENTBAR <= PERIOD THEN
ADAPTMA = CLOSE;
IF CURRENTBAR > PERIOD THEN {
SIGNAL = data2(ABS(CLOSE - CLOSE[PERIOD]));
NOISE = data2(accumn(DIFF, PERIOD));
EFRATIO = data2(SIGNAL / NOISE);
SMOOTH = data2(POWER(EFRATIO * (FASTEST - SLOWEST) + SLOWEST, 2));
ADAPTMA = ADAPTMA[1] + data2(SMOOTH * (CLOSE - ADAPTMA[1]));
}
AMA = ADAPTMA;
if data2(crossup(c,AMA*1.01)) Then
buy();
if data2(CrossDown(c,AMA*0.99)) Then
ExitLong();
200봉 적합이동평균을 상승하면 매수, 하향돌파하면 매도하는 시스템식인데요...
어떤 차트나 기간에 대입해봐도 매수가 일어나질 않습니다;
1. 적합이동평균을 차트 위에 그리는 방법(예스트레이더 사용중입니다)을 알려주세요.
2. 시스템식 검토해주시고 수정 부탁드립니다...
답변 1
예스스탁 예스스탁 답변
2012-03-02 12:31:09
안녕하세요
예스스탁입니다.
식을 수정했습니다.
동일하게 봉갯수를 조회해도 참조데이터의 첫봉과
첫봉의 시작지점이 다를수 있어 신호가 발생되지 않았습니다.
1. 지표식
INPUTS: PERIOD(200);
var : NOISE(0,data2), SIGNAL(0,data2), DIFF(0,data2), EFRATIO(0,data2),AMA(0,data2);
var : SMOOTH(1,data2), FASTEST(.6667,data2), SLOWEST(.0645,data2), ADAPTMA(0,data2);
if data2(index <= Period) Then{
DIFF = data2(ABS(C - C[1]));
ADAPTMA = data2(C);
}
IF data2(index > PERIOD) THEN {
DIFF = data2(ABS(C - C[1]));
SIGNAL = data2(ABS(C - C[PERIOD]));
NOISE = data2(accumn(DIFF, PERIOD));
EFRATIO = data2(SIGNAL / NOISE);
SMOOTH = data2(POWER(EFRATIO * (FASTEST - SLOWEST) + SLOWEST, 2));
ADAPTMA = ADAPTMA[1] + data2(SMOOTH * (C-ADAPTMA[1]));
}
AMA = ADAPTMA;
plot1(AMA);
2 시스템식
INPUTS: PERIOD(200);
var : NOISE(0,data2), SIGNAL(0,data2), DIFF(0,data2), EFRATIO(0,data2),AMA(0,data2);
var : SMOOTH(1,data2), FASTEST(.6667,data2), SLOWEST(.0645,data2), ADAPTMA(0,data2);
if data2(index <= Period) Then{
DIFF = data2(ABS(C - C[1]));
ADAPTMA = data2(C);
}
IF data2(index > PERIOD) THEN {
DIFF = data2(ABS(C - C[1]));
SIGNAL = data2(ABS(C - C[PERIOD]));
NOISE = data2(accumn(DIFF, PERIOD));
EFRATIO = data2(SIGNAL / NOISE);
SMOOTH = data2(POWER(EFRATIO * (FASTEST - SLOWEST) + SLOWEST, 2));
ADAPTMA = ADAPTMA[1] + data2(SMOOTH * (C-ADAPTMA[1]));
}
AMA = ADAPTMA;
if data2(crossup(c,AMA*1.01)) Then
buy();
if data2(CrossDown(c,AMA*0.99)) Then
ExitLong();
즐거운 하루되세요
> lsw2920 님이 쓴 글입니다.
> 제목 : 적합이동평균 예전에 구해주신것 조금 이상합니다...
> 2. 적합
INPUTS: PERIOD(200);
var : NOISE(0,data2), SIGNAL(0,data2), DIFF(0,data2), EFRATIO(0,data2),AMA(0,data2);
var : SMOOTH(1,data2), FASTEST(.6667,data2), SLOWEST(.0645,data2), ADAPTMA(0,data2);
DIFF = data2(ABS(CLOSE - CLOSE[1]));
IF CURRENTBAR <= PERIOD THEN
ADAPTMA = CLOSE;
IF CURRENTBAR > PERIOD THEN {
SIGNAL = data2(ABS(CLOSE - CLOSE[PERIOD]));
NOISE = data2(accumn(DIFF, PERIOD));
EFRATIO = data2(SIGNAL / NOISE);
SMOOTH = data2(POWER(EFRATIO * (FASTEST - SLOWEST) + SLOWEST, 2));
ADAPTMA = ADAPTMA[1] + data2(SMOOTH * (CLOSE - ADAPTMA[1]));
}
AMA = ADAPTMA;
if data2(crossup(c,AMA*1.01)) Then
buy();
if data2(CrossDown(c,AMA*0.99)) Then
ExitLong();
200봉 적합이동평균을 상승하면 매수, 하향돌파하면 매도하는 시스템식인데요...
어떤 차트나 기간에 대입해봐도 매수가 일어나질 않습니다;
1. 적합이동평균을 차트 위에 그리는 방법(예스트레이더 사용중입니다)을 알려주세요.
2. 시스템식 검토해주시고 수정 부탁드립니다...
다음글
이전글