함수설명
MACD(Moving Average Convergence & Divergence) 지표함수
※기존 MACD함수는 시그널선, 오실레이터 계산을 별도로 해야하고
내부적으로 종가를 사용해 계산하게 되어 있습니다.
MACD_TA함수는 기준값을 다른 값으로 지정해 계산할 수 있으며
하나의 함수에서 지정한 매개변수로 MACD/시그널/오실레이터값을 모두 리턴받을 수 있습니다.
작성방법
MACD_TA(기준값, 기간1, 기간2, 기간3, oMACD, oSignal, oOsc )
C
복사
매개변수 설명
•
"기준값": Numeric, 데이터, 함수, 변수, 계산식 등
•
"기간1": Numeric, 평활계수를 계산할 기간으로 단기지수이평 계산에 사용
•
"기간2": Numeric, 평활계수를 계산할 기간으로 장기지수이평 계산에 사용.
•
"기간3": Numeric, 평활계수를 계산할 기간으로 시그널선 계산에 사용
•
"oMACD": NumericRef, MACD값을 지정한 변수에 저장
•
"oSignal": NumericRef, 시그널값을 지정한 변수에 저장
•
"oOSC": NumericRef, 오실레이터값을 지정한 변수에 저장
계산
MACD = 단기 지수이동평균 - 장기 지수이동평균
시그널 = MACD를 지수이동평균
오실레이터 = MACD-시그널
활용예시
1.
MACD_TA(C,12,26,9,var1,var2,var3);
--> 종가기준 MACD를 계산하고 MACD값은 var1, 시그널은 var2, 오실레이터값은 var3에 저장
2.
//인라인함수(수식안에서 만들어 사용하는 함수)
Function infx_MACD_TA Numeric
{
Input : Price(NumericSeries),shortPeriod(NumericSimple);
input : longPeriod(NumericSimple),signalPeriod(NumericSimple);
input : oMACD(NumericRef),oSignal(NumericRef),oOsc(NumericRef);
oMACD = ema(Price, shortPeriod) - ema(Price, longPeriod);
oSignal = ema(oMACD,signalPeriod);
oOSC = oMACD-oSignal;
infx_MACD_TA = 1;
}
EndFunction
input : Short(12),long(26),sig(9);
var : oMACD(0),oSignal(0),oOsc(0);
var1 = infx_MACD_TA(c,short,long,sig,oMACD,oSignal,oOsc);
Plot1(oMACD,"MACD");
Plot2(oSignal,"Signal");
Plot3(oOsc,"OSC");
PlotBaseLine1(0);
C
복사
뒤로가기는 좌측상단의 목차 버튼을 눌러주세요.