예스스탁
예스스탁 답변
2020-01-03 14:42:33
안녕하세요
예스스탁입니다.
1
기본수식이 OI로 계산한 파라볼릭입니다.
OI로 계산한 MACD지표는 아래와 같습니다.
Inputs: FastMovAvg(12), SlowMovAvg(26), MACDMovAvg(9);
var : MACDv(0),MACDs(0),OIV(0);
OIV = Oi;
if OI == 0 Then
OIV = Oi[1];
MACDv = ema(OIV,FastMovAvg)-ema(OIV,SlowMovAvg);
MACDS = ema(MACDv,MACDMovAvg);
plot1(MACDv);
plot2(MACDs);
PlotBaseLine1(0);
2
OI로 계산한 파라볼리값을 다시 MACD처리 하는 내용이시면 아래식 이용하시면 됩니다.
Input : AF(0.02), AFMAX(0.2);
Var : Direction(0), SAR_Value(OI), AF_Value(.02), HighValue(OI), LowValue(OI), EP(0),CSARV(0),OIV(0);
Inputs: FastMovAvg(12), SlowMovAvg(26), MACDMovAvg(9);
var : MACDv(0),MACDs(0);
OIV = Oi;
if OI == 0 Then
OIV = Oi[1];
if EP != 0 Then
{
if Direction == 1 then
{
EP = HighValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV > HighValue then
{
HighValue = OIV;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if OIV < SAR_Value then
{
Direction = -1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
LowValue = OIV;
}
}
else
{
EP = LowValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV < LowValue then
{
LowValue = OIV;
AF_Value = AF_Value + Af;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if OIV > SAR_Value then
{
Direction = 1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
HighValue = OIV;
}
}
CSarv = SAR_Value;
}
else
{
if SAR_Value != 0 && EP == 0 then
{
if Direction == 1 then
{
EP = HighValue;
AF_Value = AF;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV > HighValue then
{
HighValue = OIV;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
else
{
EP = LowValue;
AF_Value = Af;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV < LowValue then
{
LowValue = OIV;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
CSarv = SAR_Value;
}
else
{
if Direction == 0 then
{
if OIV > OIV[1] then Direction = 1;
else
if OIV < OIV[1] then Direction = -1;
}
else
{
if Direction == 1 then
{
if OIV < OIV[1] then
{
Direction = -1;
SAR_Value = HighValue;
CSarv = SAR_Value;
}
}
if Direction == -1 then
{
if OIV > OIV[1] then
{
Direction = 1;
SAR_Value = LowValue;
CSarv = SAR_Value;
}
}
}
LowValue = min(OIV, LowValue);
HighValue = max(OIV, HighValue);
}
}
MACDv = ema(CSarv,FastMovAvg)-ema(CSarv,SlowMovAvg);
MACDS = ema(MACDv,MACDMovAvg);
plot1(MACDv);
plot2(MACDs);
PlotBaseLine1(0);
즐거운 하루되세요
> dkfvkrh7 님이 쓴 글입니다.
> 제목 : 수식 부탁드립니다
> 안녕하세요
항상 도움 주셔서 감사합니다
아래 OI 수식을 MACD 수식으로 부탁드립니다
파라볼릭 수식인데
Inputs: FastMovAvg(12), SlowMovAvg(26), MACDMovAvg(9);의
MACD 수식으로 사용하고 싶습니다
부탁 드립니다
감사합니다
Input : AF(0.02), AFMAX(0.2);
Var : Direction(0), SAR_Value(OI), AF_Value(.02), HighValue(OI), LowValue(OI), EP(0),CSARV(0),OIV(0);
OIV = Oi;
if OI == 0 Then
OIV = Oi[1];
if EP != 0 Then
{
if Direction == 1 then
{
EP = HighValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV > HighValue then
{
HighValue = OIV;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if OIV < SAR_Value then
{
Direction = -1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
LowValue = OIV;
}
}
else
{
EP = LowValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV < LowValue then
{
LowValue = OIV;
AF_Value = AF_Value + Af;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if OIV > SAR_Value then
{
Direction = 1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
HighValue = OIV;
}
}
CSarv = SAR_Value;
}
else
{
if SAR_Value != 0 && EP == 0 then
{
if Direction == 1 then
{
EP = HighValue;
AF_Value = AF;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV > HighValue then
{
HighValue = OIV;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
else
{
EP = LowValue;
AF_Value = Af;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if OIV < LowValue then
{
LowValue = OIV;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
CSarv = SAR_Value;
}
else
{
if Direction == 0 then
{
if OIV > OIV[1] then Direction = 1;
else
if OIV < OIV[1] then Direction = -1;
}
else
{
if Direction == 1 then
{
if OIV < OIV[1] then
{
Direction = -1;
SAR_Value = HighValue;
CSarv = SAR_Value;
}
}
if Direction == -1 then
{
if OIV > OIV[1] then
{
Direction = 1;
SAR_Value = LowValue;
CSarv = SAR_Value;
}
}
}
LowValue = min(OIV, LowValue);
HighValue = max(OIV, HighValue);
}
}
plot1(OIV,"미결제약정");
plot2(CSARv,"미결파라볼릭"); //속성에서 점그래프