예스스탁
예스스탁 답변
2021-03-11 13:52:18
안녕하세요
예스스탁입니다.
틱봉에서 분봉의 지표는 정확히 계산이 불가능합니다.
랭귀지는 완성봉의 시고저종만 이용이 가능해서 봉내부의 분봉시간경계의 값을 알수 없습니다.
근사값으로 계산해서 이용하고자 하시면 아래 1번식 이용하시면 되며
아니시면 틱봉에 참조데이타로 30분봉 추가하고 2번식 이용하시면 됩니다.
참조데이타는 차트왼쪽 상단의 종목선택버튼 중 오른쪽 클릭하시면 선택해 추가할 수 있습니다. 기본차트와 동일종목을 다른주기로 셋팅가능합니다.
1
input : ntime1(30);
input : 전환선기간(9),기준선기간(26),선행스팬2기간(52);
var : 전환선(0),기준선(0),선행스팬1(0),선행스팬2(0);
var : TF(0),S1(0),D1(0),TM(0),cnt(0);
var : H1(0),L1(0),H11(0),L11(0),H2(0),L2(0),H22(0),L22(0),H3(0),L3(0);
Array : HH[100](0),LL[100](0);
var : m전환선(0),m기준선(0),m선행스팬1(0),m선행스팬2(0);
전환선 = (highest(H,전환선기간)+lowest(L,전환선기간))/2;
기준선 = (highest(H,기준선기간)+lowest(L,기준선기간))/2;
선행스팬1 = (전환선[25]+기준선[25])/2;
선행스팬2 = (highest(H,선행스팬2기간)[25]+lowest(L,선행스팬2기간)[25])/2;
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;
TF = TM%ntime1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then
{
HH[0] = H;
LL[0] = L;
for cnt = 1 to 99{
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
}
}
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
if HH[선행스팬2기간+25] > 0 and LL[선행스팬2기간+25] > 0 then
{
H1 = HH[0];
L1 = LL[0];
H11 = HH[25];
L11 = LL[25];
H2 = HH[0];
L2 = LL[0];
H22 = HH[25];
L22 = LL[25];
H3 = HH[25];
L3 = LL[25];
for cnt = 0 to 선행스팬2기간-1{
if cnt < 전환선기간 Then{
if HH[cnt] > H1 Then
H1 = HH[cnt];
if LL[cnt] < L1 Then
L1 = LL[cnt];
if HH[cnt+25] > H11 Then
H11 = HH[cnt+25];
if LL[cnt+25] < L11 Then
L11 = LL[cnt+25];
}
if cnt < 기준선기간 Then{
if HH[cnt] > H2 Then
H2 = HH[cnt];
if LL[cnt] < L2 Then
L2 = LL[cnt];
if HH[cnt+25] > H22 Then
H22 = HH[cnt+25];
if LL[cnt+25] < L22 Then
L22 = LL[cnt+25];
}
if HH[cnt+25] > H3 Then
H3 = HH[cnt+25];
if LL[cnt+25] < L3 Then
L3 = LL[cnt+25];
}
m전환선 = (H1 + L1)/2;
m기준선 = (H2 + L2)/2;
m선행스팬1 = ((H11+L11)/2 + (H22+L22)/2) / 2 ;
m선행스팬2 = (H3+L3) / 2;
if C > m선행스팬1 and m선행스팬1 > m선행스팬2 and CrossUp(선행스팬1,선행스팬2) then
Buy();
}
}
2
input : 전환선기간(9),기준선기간(26),선행스팬2기간(52);
var : 전환선(0,Data1),기준선(0,Data1),선행스팬1(0,Data1),선행스팬2(0,Data1);
var : m전환선(0,Data2),m기준선(0,Data2),m선행스팬1(0,Data2),m선행스팬2(0,Data2);
전환선 = Data1((highest(H,전환선기간)+lowest(L,전환선기간))/2);
기준선 = Data1((highest(H,기준선기간)+lowest(L,기준선기간))/2);
선행스팬1 = Data1((전환선[25]+기준선[25])/2);
선행스팬2 = Data1((highest(H,선행스팬2기간)[25]+lowest(L,선행스팬2기간)[25])/2);
m전환선 = Data2((highest(H,전환선기간)+lowest(L,전환선기간))/2);
m기준선 = Data2((highest(H,기준선기간)+lowest(L,기준선기간))/2);
m선행스팬1 = Data2((전환선[25]+기준선[25])/2);
m선행스팬2 = Data2((highest(H,선행스팬2기간)[25]+lowest(L,선행스팬2기간)[25])/2);
if C > m선행스팬1 and m선행스팬1 > m선행스팬2 and CrossUp(선행스팬1,선행스팬2) then
Buy();
즐거운 하루되세요
> kellow 님이 쓴 글입니다.
> 제목 : 부탁합니다
> 안녕하세요
다음 수식좀 부탁합니다
30분차트에서 일목 선행스펜이 정배열을 만족 (종가>선행스팬1>선행스팬2)하고
240틱차트에서 선행스팬1이 선행스팬2를 상향돌파하면 매수