예스스탁
예스스탁 답변
2024-11-07 14:45:20
안녕하세요
예스스탁입니다.
# ---<Stochastics(5,3,3) >--------------------------------------------------
Inputs : Sto_Per1(5), Sto_Per2(3), Sto_Per3(3);# 변수 : 5,3,3 // 12,5,5 // 30,10,10
Variables : Sto_Var1(0), Sto_Var2(0), Sto_Var3(0), Sto_Var4(0), Sto_Var5(0);
Variables : PreSto_Var2(0),PreSto_Var3(0),PreSto_Var4(0),PreSto_Var5(0);
Variables : D_Highest(0),D_Lowest(0),D_Index(0),cnt(0);
Variables : PrepreSto_Var4(0),EP1(0),EP2(0),T(0),PreT(0),D1(0),T1(0),C1(0);
Ep1 = 2/(Sto_Per2+1);
Ep2 = 2/(Sto_Per3+1);
D_Highest = DayHigh;
D_Lowest = DayLow;
For cnt = 0 to Sto_Per1-1
{
If DayHigh(cnt) > D_Highest Then D_Highest = DayHigh(cnt);
if DayLow(cnt) < D_Lowest Then D_Lowest = DayLow(cnt);
}
Sto_Var1 = (Close-D_Lowest)/(D_Highest-D_Lowest)*100;
If bdate != bDate[1] Then
{
D_Index = D_Index + 1;
PrepreSto_Var4 = PreSto_Var4;
PreSto_Var2 = Sto_Var2[1];
PreSto_Var3 = Sto_Var3[1];
PreSto_Var4 = Sto_Var4[1];
PreSto_Var5 = Sto_Var5[1];
PreT = T[1];
D1 = sDate[1];
T1 = sTime[1];
C1 = C[1];
}
If D_Index <= 1 Then
Begin
Sto_Var2 = Sto_Var1;
Sto_Var3 = Sto_Var2;
End
Else
Begin
Sto_Var2 = Sto_Var1 * EP1 + PreSto_Var2 * (1-EP1);
Sto_Var3 = Sto_Var3 * EP1 + PreSto_Var3 * (1-EP1);
End;
Sto_Var4 = Sto_Var2*2-100;
Sto_Var5 = Sto_Var3*2-100;
Plot1(Sto_Var2);
var : TL1(0),TL2(0);
if NextBarSdate != sDate Then
{
if Sto_Var4 > PreSto_Var4 Then
{
if T != 1 Then
{
TL_SetEnd(TL1,d1,t1,c1);
TL1 = TL_New(d1,t1,c1,sDate,sTime,C);
TL_SetColor(TL1,Red);
}
Else
{
TL_SetEnd(TL1,sdate,sTime,C1);
}
T = 1;
}
if Sto_Var4 < PreSto_Var4 Then
{
if T != -1 Then
{
TL_SetEnd(TL1,d1,t1,c1);
TL1 = TL_New(d1,t1,c1,sDate,sTime,C);
TL_SetColor(TL1,Blue);
}
Else
{
TL_SetEnd(TL1,sdate,sTime,C);
}
T = -1;
}
}
Else
{
TL_Delete(TL2);
if Sto_Var4 > PreSto_Var4 Then
{
if T != 1 Then
{
TL2 = TL_New(d1,t1,c1,sDate,sTime,c);
TL_SetColor(TL2,Red);
}
Else
{
TL_SetEnd(Tl1,sdate,sTime,C);
}
}
if Sto_Var4 < PreSto_Var4 Then
{
if T != -1 Then
{
TL2 = TL_New(d1,t1,c1,sDate,sTime,c);
TL_SetColor(TL2,Blue);
}
Else
{
TL_SetEnd(Tl1,sdate,sTime,C);
}
}
}
즐거운 하루되세요
> 다니엘87 님이 쓴 글입니다.
> 제목 : 스토캐스틱 지표를 추세선으로 표시하는 수식 2
> 아래 수식은 일봉 스토캐스틱을 분봉에 표시하는 식을 기본으로 하여
스토캐스틱 선의 상승과 하락을 추세선으로 차트에 표시하는 수식입니다.
이전에 가르쳐 주셨던 것을 기반으로 나름대로 수정하여 만들어 봤지만...
제대로 나오지가 않네요. ㅠㅠ
한번 봐 주시고 수정을 부탁드립니다.
감사합니다.
# ---<Stochastics(5,3,3) >--------------------------------------------------
Variables : Sto_Var1(0), Sto_Var2(0), Sto_Var3(0), Sto_Var4(0), Sto_Var5(0);
Variables : PreSto_Var2(0),PreSto_Var3(0),PreSto_Var4(0),PreSto_Var5(0);
Variables : D_Highest(0),D_Lowest(0),D_Index(0),cnt(0);
Variables : PrepreSto_Var4(0);
Inputs : Sto_Per1(5), Sto_Per2(3), Sto_Per3(3); # 변수 : 5,3,3 // 12,5,5 // 30,10,10
D_Highest = DayHigh;
D_Lowest = DayLow;
For cnt = 0 to Sto_Per1-1 Begin
If DayHigh(cnt) > D_Highest Then D_Highest = DayHigh(cnt);
if DayLow(cnt) < D_Lowest Then D_Lowest = DayLow(cnt);
End;
Sto_Var1 = (Close-D_Lowest)/(D_Highest-D_Lowest)*100;
If Date != Date[1] Then Begin
D_Index = D_Index + 1;
PrepreSto_Var4 = PreSto_Var4;
PreSto_Var2 = Sto_Var2[1];
PreSto_Var3 = Sto_Var3[1];
PreSto_Var4 = Sto_Var4[1];
PreSto_Var5 = Sto_Var5[1];
End;
If D_Index <= 1 Then Begin
Sto_Var2 = Sto_Var1;
Sto_Var3 = Sto_Var2;
End
Else Begin
Sto_Var2 = Sto_Var1*2/(Sto_Per2+1) + PreSto_Var2*(1-2/(Sto_Per2+1));
Sto_Var3 = Sto_Var2*2/(Sto_Per3+1) + PreSto_Var3*(1-2/(Sto_Per3+1));
End;
Sto_Var4 = Sto_Var2*2-100;
Sto_Var5 = Sto_Var3*2-100;
# ---<Stochastics Line >--------------------------------------------------
Variables : TL_K(0);
If PreSto_Var4 < Sto_Var4 Then Begin
If PrepreSto_Var4 > PreSto_Var4 Then Begin
TL_K = TL_New(sDate[1],sTime[1],Low[1],sDate,sTime,High);
TL_SetColor(TL_K,RED);
TL_SetStyle(TL_K,1);
TL_SetSize (TL_K,1);
End
Else TL_SetEnd(TL_K,sDate,sTime,High);
End;
If PreSto_Var4 > Sto_Var4 Then Begin
If PrepreSto_Var4 < PreSto_Var4 Then Begin
TL_K = TL_New(sDate[1],sTime[1],High[1],sDate,sTime,Low);
TL_SetColor(TL_K,Blue);
TL_SetStyle(TL_K,1);
TL_SetSize (TL_K,1);
End
Else TL_SetEnd(TL_K,sDate,sTime,Low);
End;