커뮤니티

적합이동평균의 사용?

프로필 이미지
lsw2920
2012-02-29 03:14:00
358
글번호 48352
답변완료
예전 질문에서, 이동평균보다 크면 매수, 작으면 매도하는 시스템이 다음과 같았습니다. if data2(crossup(c,ma(c,200)*1.01)) Then buy(); if data2(CrossDown(c,ma(c,200)*0.99)) Then ExitLong(); 여기서 ma를 Ema 로 바꾸면 지수이평이 된다고 하셨습니다. 그러면 적합이동평균선(AMA)로 바꾸려면 어떻게 해야 합니까? 또, 삼각가중이동평균선으로 바꾸려면 어떻게 해야 합니까?
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-02-29 10:42:29

안녕하세요 예스스탁입니다. 함수로 제공되는 이평함수는 단순이평(MA),지수이동평균(EMA),가중이평(WMA) 세가지 입니다. 나머지 평균법은 따로 수식으로 만들어 사용하셔야 합니다. 1. 삼각가중 Inputs: Length1(200); Variables: TLen1(0,data2),TRIma1(0,data2); TLen1 = data2(Ceiling((Length1 + 1) * .5)); TRIma1 = data2(ma(ma(C, TLen1), TLen1)); if data2(crossup(c,TLen1*1.01)) Then buy(); if data2(CrossDown(c,TLen1*0.99)) Then ExitLong(); 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(); 즐거운 하루되세요 > lsw2920 님이 쓴 글입니다. > 제목 : 적합이동평균의 사용? > 예전 질문에서, 이동평균보다 크면 매수, 작으면 매도하는 시스템이 다음과 같았습니다. if data2(crossup(c,ma(c,200)*1.01)) Then buy(); if data2(CrossDown(c,ma(c,200)*0.99)) Then ExitLong(); 여기서 ma를 Ema 로 바꾸면 지수이평이 된다고 하셨습니다. 그러면 적합이동평균선(AMA)로 바꾸려면 어떻게 해야 합니까? 또, 삼각가중이동평균선으로 바꾸려면 어떻게 해야 합니까?