커뮤니티
안녕하세요
2019-06-13 15:07:00
311
글번호 129422
반갑습니다.
아래식을 종가를 기준으로 부탁드립니다.
(지표판독시 좁혀져서 난해한점 해결방법은 없을까요)
input : 타주기분1(15),타주기분2(30);
var : S1(0),D1(0),TM(0),TF1(0),TF2(0),cnt(0);
var : tx1(0),tx2(0),tx3(0),tx4(0);
Array : O1[100](0),H1[100](0),L1[100](0);
Array : O2[100](0),H2[100](0),L2[100](0);
if Bdate != Bdate[1] Then{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
//15분
TF1 = TM%타주기분1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF1 < TF1[1]) Then
{
O1[0] = O;
H1[0] = H;
L1[0] = L;
for cnt = 1 to 99
{
O1[cnt] = O1[cnt-1][1];
H1[cnt] = H1[cnt-1][1];
L1[cnt] = L1[cnt-1][1];
}
}
if H > H1[0] Then
H1[0] = H;
if L < L1[0] Then
L1[0] = L;
plot1(O1[0],"시가1");
plot2(H1[0],"고가1");
plot3(L1[0],"저가1");
Text_Delete(tx1);
Text_Delete(tx2);
tx1 = Text_New(sdate,stime,H1[0],NumToStr(H1[0],2));
tx2 = Text_New(sdate,stime,L1[0],NumToStr(L1[0],2));
Text_SetStyle(tx1,0,1);
Text_SetStyle(tx2,0,0);
//30분
TF2 = TM%타주기분2;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then
{
O2[0] = O;
H2[0] = H;
L2[0] = L;
for cnt = 1 to 99
{
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1];
}
}
if H > H2[0] Then
H2[0] = H;
if L < L2[0] Then
L2[0] = L;
plot4(O2[0],"시가2");
plot5(H2[0],"고가2");
plot6(L2[0],"저가2");
Text_Delete(tx3);
Text_Delete(tx4);
tx3 = Text_New(sdate,stime,H2[0],NumToStr(H2[0],2));
tx4 = Text_New(sdate,stime,L2[0],NumToStr(L2[0],2));
Text_SetStyle(tx3,0,1);
Text_SetStyle(tx4,0,0);
}
감사합니다
답변 1
예스스탁 예스스탁 답변
2019-06-13 15:44:20
안녕하세요
예스스탁입니다.
차트의 Y축 스케일에 따라 표시가 되는 부분이라
지표간의 차이가 없어 좁혀진 부분은 따로 수식안에서 처리할 방법이 없습니다.
1
종가기준이 어떤 값을 의미하시는지 모르겠습니다.
해당 수식이 지정한 시간간격으로 시고저를 계산하는 내용입니다.
각봉이 종가로 시고저를 계산하게 변경해 드립니다.
input : 타주기분1(15),타주기분2(30);
var : S1(0),D1(0),TM(0),TF1(0),TF2(0),cnt(0);
var : tx1(0),tx2(0),tx3(0),tx4(0);
Array : O1[100](0),H1[100](0),L1[100](0);
Array : O2[100](0),H2[100](0),L2[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
//15분
TF1 = TM%타주기분1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF1 < TF1[1]) Then
{
O1[0] = c;
H1[0] = c;
L1[0] = c;
for cnt = 1 to 99
{
O1[cnt] = O1[cnt-1][1];
H1[cnt] = H1[cnt-1][1];
L1[cnt] = L1[cnt-1][1];
}
}
if c > H1[0] Then
H1[0] = c;
if c < L1[0] Then
L1[0] = c;
plot1(O1[0],"시가1");
plot2(H1[0],"고가1");
plot3(L1[0],"저가1");
Text_Delete(tx1);
Text_Delete(tx2);
tx1 = Text_New(sdate,stime,H1[0],NumToStr(H1[0],2));
tx2 = Text_New(sdate,stime,L1[0],NumToStr(L1[0],2));
Text_SetStyle(tx1,0,1);
Text_SetStyle(tx2,0,0);
//30분
TF2 = TM%타주기분2;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then
{
O2[0] = c;
H2[0] = c;
L2[0] = c;
for cnt = 1 to 99
{
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1];
}
}
if c > H2[0] Then
H2[0] = c;
if c < L2[0] Then
L2[0] = c;
plot4(O2[0],"시가2");
plot5(H2[0],"고가2");
plot6(L2[0],"저가2");
Text_Delete(tx3);
Text_Delete(tx4);
tx3 = Text_New(sdate,stime,H2[0],NumToStr(H2[0],2));
tx4 = Text_New(sdate,stime,L2[0],NumToStr(L2[0],2));
Text_SetStyle(tx3,0,1);
Text_SetStyle(tx4,0,0);
}
2
종가기준이 타주기봉의 직전 완성봉기준이면
아래와 같이 변경하시면 됩니다.
타주기봉의 시고저값이 [0]이면 현재봉, [1]이면 한봉전이므로
출력값을 [1]로 변경하시면 됩니다.
input : 타주기분1(15),타주기분2(30);
var : S1(0),D1(0),TM(0),TF1(0),TF2(0),cnt(0);
var : tx1(0),tx2(0),tx3(0),tx4(0);
Array : O1[100](0),H1[100](0),L1[100](0);
Array : O2[100](0),H2[100](0),L2[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
//15분
TF1 = TM%타주기분1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF1 < TF1[1]) Then
{
O1[0] = O;
H1[0] = H;
L1[0] = L;
for cnt = 1 to 99
{
O1[cnt] = O1[cnt-1][1];
H1[cnt] = H1[cnt-1][1];
L1[cnt] = L1[cnt-1][1];
}
}
if H > H1[0] Then
H1[0] = H;
if L < L1[0] Then
L1[0] = L;
plot1(O1[1],"시가1");
plot2(H1[1],"고가1");
plot3(L1[1],"저가1");
Text_Delete(tx1);
Text_Delete(tx2);
tx1 = Text_New(sdate,stime,H1[1],NumToStr(H1[1],2));
tx2 = Text_New(sdate,stime,L1[1],NumToStr(L1[1],2));
Text_SetStyle(tx1,0,1);
Text_SetStyle(tx2,0,0);
//30분
TF2 = TM%타주기분2;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then
{
O2[0] = O;
H2[0] = H;
L2[0] = L;
for cnt = 1 to 99
{
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1];
}
}
if H > H2[0] Then
H2[0] = H;
if L < L2[0] Then
L2[0] = L;
plot4(O2[1],"시가2");
plot5(H2[1],"고가2");
plot6(L2[1],"저가2");
Text_Delete(tx3);
Text_Delete(tx4);
tx3 = Text_New(sdate,stime,H2[1],NumToStr(H2[1],2));
tx4 = Text_New(sdate,stime,L2[1],NumToStr(L2[1],2));
Text_SetStyle(tx3,0,1);
Text_SetStyle(tx4,0,0);
}
즐거운 하루되세요
> byeongup 님이 쓴 글입니다.
> 제목 : 안녕하세요
> 반갑습니다.
아래식을 종가를 기준으로 부탁드립니다.
(지표판독시 좁혀져서 난해한점 해결방법은 없을까요)
input : 타주기분1(15),타주기분2(30);
var : S1(0),D1(0),TM(0),TF1(0),TF2(0),cnt(0);
var : tx1(0),tx2(0),tx3(0),tx4(0);
Array : O1[100](0),H1[100](0),L1[100](0);
Array : O2[100](0),H2[100](0),L2[100](0);
if Bdate != Bdate[1] Then{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
//15분
TF1 = TM%타주기분1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF1 < TF1[1]) Then
{
O1[0] = O;
H1[0] = H;
L1[0] = L;
for cnt = 1 to 99
{
O1[cnt] = O1[cnt-1][1];
H1[cnt] = H1[cnt-1][1];
L1[cnt] = L1[cnt-1][1];
}
}
if H > H1[0] Then
H1[0] = H;
if L < L1[0] Then
L1[0] = L;
plot1(O1[0],"시가1");
plot2(H1[0],"고가1");
plot3(L1[0],"저가1");
Text_Delete(tx1);
Text_Delete(tx2);
tx1 = Text_New(sdate,stime,H1[0],NumToStr(H1[0],2));
tx2 = Text_New(sdate,stime,L1[0],NumToStr(L1[0],2));
Text_SetStyle(tx1,0,1);
Text_SetStyle(tx2,0,0);
//30분
TF2 = TM%타주기분2;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then
{
O2[0] = O;
H2[0] = H;
L2[0] = L;
for cnt = 1 to 99
{
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1];
}
}
if H > H2[0] Then
H2[0] = H;
if L < L2[0] Then
L2[0] = L;
plot4(O2[0],"시가2");
plot5(H2[0],"고가2");
plot6(L2[0],"저가2");
Text_Delete(tx3);
Text_Delete(tx4);
tx3 = Text_New(sdate,stime,H2[0],NumToStr(H2[0],2));
tx4 = Text_New(sdate,stime,L2[0],NumToStr(L2[0],2));
Text_SetStyle(tx3,0,1);
Text_SetStyle(tx4,0,0);
}
감사합니다
이전글