커뮤니티
문의
2013-02-02 14:50:04
249
글번호 59035
3분 봉 챠트에서 MACD oscillator를
6분봉과 10분봉 그리고 30분 봉 MACD ocill를 가져 올 수 있나요 . 변수도 조정가능한가요
Input : shortPeriod(12), longPeriod(26), Period(9);
Var : MACDv(0), MACDsig(0),macdosc(0) ;
MACDv = MACD(shortPeriod, longPeriod);
MACDsig = ema(MACDv,Period);
macdosc = MACDv-ema(MACDv,Period);
if macdosc > 0 then
{
plot1(macdosc, "MACDOscillator+");
Plot2(0, "MACDOscillator-");
}
else
{
Plot1(0, "MACDOscillator+");
Plot2(macdosc, "MACDOscillator-");
}
Plot3(MACDv, "MACD");
Plot4(MACDsig, "MACDSignal");
PlotBaseLine1(0, "기준선1");
답변 1
예스스탁 예스스탁 답변
2013-02-04 11:36:31
안녕하세요
예스스탁입니다.
타주기의 지표는 주종목데이터의 배수가 되는 기간만 가능합니다.
3분봉에서 10분봉은 가능하지 않습니다.
또한 지수이평이 기본평균방법이 되는 지표는 봉갯수의 영향을 받습니다.
3분봉에서 30분봉과 같이 많이 차이가 나는 경우에는
실시간 차트가 5000개봉으로 한장이 되어 있어
30분봉으로는 1/10이므로 30분봉 값은 실시간 차트에서 보시는것과
차이가 발생하게 됩니다.
이용에 참고하시기 바랍니다.
Input : Atime(6),APeriod1(12),APeriod2(26),APeriod3(9);
Var : AEp1(0), AJISU1(0), ADINDEX1(0), APreJISU1(0);
Var : AEp2(0), AJISU2(0), APreJISU2(0);
Var : AEp3(0), AJISU3(0), APreMACDSIG(0);
var : AMACDVal(0),AMACDSig(0),AMACDOsc(0),APreMACDOsc(0);
AEp1 = 2/(APeriod1+1);
AEp2 = 2/(APeriod2+1);
AEp3 = 2/(APeriod3+1);
var1 = TimeToMinutes(stime)%Atime;
if dayindex() == 0 or (var1 < var1[1] and stime > stime[1]) Then{
ADINDEX1 = ADINDEX1 + 1;
APreJISU1 = AJISU1[1];
APreJISU2 = AJISU2[1];
APreMACDOsc = AMACDOsc[1];
}
if ADINDEX1 <= 1 then {
AJISU1 = C;
AJISU2 = C;
}
else{
AJISU1 = C * AEP1 + APreJISU1 * (1-AEP1);
AJISU2 = C * AEP2 + APreJISU2 * (1-AEP2);
}
AMACDVal = AJiSu1-AJisu2;
if ADINDEX1 <= 2 then {
AMACDSIG = AJisu1-Ajisu2;
}
else{
AMACDSIG = AMACDVal * AEP3 + APreMACDSIG * (1-AEP3);
}
AMACDOsc = AMACDVal-AMACDsig;
if AMACDOsc > 0 Then
plot1(AMACDOsc,"osc1",RED);
Else
plot1(AMACDOsc,"osc1",BLUE);
plot2(AMACDVal);
plot3(AMACDSIG);
Input : Btime(30),BPeriod1(12),BPeriod2(26),BPeriod3(9);
Var : BEp1(0), BJISU1(0), BDINDEX1(0), BPreJISU1(0);
Var : BEp2(0), BJISU2(0), BPreJISU2(0);
Var : BEp3(0), BJISU3(0), BPreMACDSIG(0);
var : BMACDVal(0),BMACDSig(0),BMACDOsc(0),BPreMACDOsc(0);
BEp1 = 2/(BPeriod1+1);
BEp2 = 2/(BPeriod2+1);
BEp3 = 2/(BPeriod3+1);
var2 = TimeToMinutes(stime)%Btime;
if dayindex() == 0 or (var2 < var2[1] and stime > stime[1]) Then{
BDINDEX1 = BDINDEX1 + 1;
BPreJISU1 = BJISU1[1];
BPreJISU2 = BJISU2[1];
BPreMACDOsc = BMACDOsc[1];
}
if BDINDEX1 <= 1 then {
BJISU1 = C;
BJISU2 = C;
}
else{
BJISU1 = C * BEP1 + BPreJISU1 * (1-BEP1);
BJISU2 = C * BEP2 + BPreJISU2 * (1-BEP2);
}
BMACDVal = BJiSu1-BJisu2;
if BDINDEX1 <= 2 then
BMACDSIG = BJisu1-Bjisu2;
else
BMACDSIG = BMACDVal * BEP3 + BPreMACDSIG * (1-BEP3);
BMACDOsc = BMACDVal-BMACDsig;
if BMACDOsc > 0 Then
plot4(BMACDOsc,"osc2",RED);
Else
plot4(BMACDOsc,"osc2",BLUE);
plot5(BMACDVal);
plot6(BMACDSIG);
즐거운 하루되세요
> 구다이전설 님이 쓴 글입니다.
> 제목 : 문의
> 3분 봉 챠트에서 MACD oscillator를
6분봉과 10분봉 그리고 30분 봉 MACD ocill를 가져 올 수 있나요 . 변수도 조정가능한가요
Input : shortPeriod(12), longPeriod(26), Period(9);
Var : MACDv(0), MACDsig(0),macdosc(0) ;
MACDv = MACD(shortPeriod, longPeriod);
MACDsig = ema(MACDv,Period);
macdosc = MACDv-ema(MACDv,Period);
if macdosc > 0 then
{
plot1(macdosc, "MACDOscillator+");
Plot2(0, "MACDOscillator-");
}
else
{
Plot1(0, "MACDOscillator+");
Plot2(macdosc, "MACDOscillator-");
}
Plot3(MACDv, "MACD");
Plot4(MACDsig, "MACDSignal");
PlotBaseLine1(0, "기준선1");
다음글
이전글