항상 감사드립니다.
타주기 지표는 기본차트 기준 배수로 높은 주기만 가능합니다.
2분봉에서 5분봉은 가능하지 않습니다라며
2분봉 기준으로 아래 수식을 만들어주셨는데
그럼 그냥 3분봉 기준으로 부탁드릴게요.
input : ntime1(10),P1(5),P2(10),P3(20),P4(60),P5(300);
var : S1(0),D1(0),TM(0),TF(0);
var : cnt(0),sum1(0),mav1(0),sum2(0),mav2(0),sum3(0),mav3(0);
var : sum4(0),mav4(0),sum5(0),mav5(0);
var : mav11(0),mav21(0),mav31(0),mav41(0),mav51(0);
var : hh(0),hh1(0),ll(0),ll1(0);
Array : CC[500](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;
TF = TM%ntime1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then
{
for cnt = 499 downto 1
{
CC[cnt] = CC[cnt-1];
}
mav11 = mav1[1];
mav21 = mav2[1];
mav31 = mav3[1];
mav41 = mav4[1];
mav51 = mav5[1];
hh = h;
ll = l;
hh1 = hh[1];
ll1 = ll[1];
}
CC[0] = C;
if h > hh Then
hh = h;
if l < ll Then
ll = l;
if CC[P1-1] > 0 then
{
sum1 = 0;
for cnt = 0 to P1-1
{
sum1 = sum1+CC[cnt];
}
mav1 = sum1/P1;
}
if CC[P2-1] > 0 then
{
sum2 = 0;
for cnt = 0 to P2-1
{
sum2 = sum2+CC[cnt];
}
mav2 = sum2/P2;
}
if CC[P3-1] > 0 then
{
sum3 = 0;
for cnt = 0 to P3-1
{
sum3 = sum3+CC[cnt];
}
mav3 = sum3/P3;
}
if CC[P4-1] > 0 then
{
sum4 = 0;
for cnt = 0 to P4-1
{
sum4 = sum4+CC[cnt];
}
mav4 = sum4/P4;
}
if CC[P5-1] > 0 then
{
sum5 = 0;
for cnt = 0 to P5-1
{
sum5 = sum5+CC[cnt];
}
mav5 = sum5/P5;
}
if (hh >= mav1 and hh1 < mav11) or (ll <= mav1 and ll1 > mav11) Then
{
value1 = mav1;
Alert("P1이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav2 and hh1 < mav21) or (ll <= mav2 and ll1 > mav21) Then
{
value2 = mav2;
Alert("P2이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav3 and hh1 < mav31) or (ll <= mav3 and ll1 > mav31) Then
{
value3 = mav3;
Alert("P3이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav4 and hh1 < mav41) or (ll <= mav4 and ll1 > mav41) Then
{
value4 = mav4;
Alert("P4이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav5 and hh1 < mav51) or (ll <= mav5 and ll1 > mav51) Then
{
value5 = mav5;
Alert("P4이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if value1 > 0 Then
Plot1(value1);
if value2 > 0 Then
Plot2(value2);
if value3 > 0 Then
Plot3(value3);
if value4 > 0 Then
Plot4(value4);
if value5 > 0 Then
Plot5(value5);
}
답변 1
예스스탁
예스스탁 답변
2024-03-04 15:14:47
안녕하세요
예스스탁입니다
작성해 드린 수식은 기본차트 특정주기로 만들어 드린식이 아닙니다.
수식으로 다른 주기의 지표값등은 기본차트의 주기 기준으로 배수인 주기만
계산이 가능하다는 의미입니다.
기본차트 주기 기준으로 배수로 다른주기의 이평값을 보고자 하시면
배수인 다른주기를 input변수 중 ntime1로 지정하시면 됩니다.
차트가 3분봉이면 타주기는 6분,9분,12분과 같은 주기만 가능하고
5분봉은 가능하지 않습니다.
즐거운 하루되세요
> 타이밍승부사 님이 쓴 글입니다.
> 제목 : 문의
> 항상 감사드립니다.
타주기 지표는 기본차트 기준 배수로 높은 주기만 가능합니다.
2분봉에서 5분봉은 가능하지 않습니다라며
2분봉 기준으로 아래 수식을 만들어주셨는데
그럼 그냥 3분봉 기준으로 부탁드릴게요.
input : ntime1(10),P1(5),P2(10),P3(20),P4(60),P5(300);
var : S1(0),D1(0),TM(0),TF(0);
var : cnt(0),sum1(0),mav1(0),sum2(0),mav2(0),sum3(0),mav3(0);
var : sum4(0),mav4(0),sum5(0),mav5(0);
var : mav11(0),mav21(0),mav31(0),mav41(0),mav51(0);
var : hh(0),hh1(0),ll(0),ll1(0);
Array : CC[500](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;
TF = TM%ntime1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then
{
for cnt = 499 downto 1
{
CC[cnt] = CC[cnt-1];
}
mav11 = mav1[1];
mav21 = mav2[1];
mav31 = mav3[1];
mav41 = mav4[1];
mav51 = mav5[1];
hh = h;
ll = l;
hh1 = hh[1];
ll1 = ll[1];
}
CC[0] = C;
if h > hh Then
hh = h;
if l < ll Then
ll = l;
if CC[P1-1] > 0 then
{
sum1 = 0;
for cnt = 0 to P1-1
{
sum1 = sum1+CC[cnt];
}
mav1 = sum1/P1;
}
if CC[P2-1] > 0 then
{
sum2 = 0;
for cnt = 0 to P2-1
{
sum2 = sum2+CC[cnt];
}
mav2 = sum2/P2;
}
if CC[P3-1] > 0 then
{
sum3 = 0;
for cnt = 0 to P3-1
{
sum3 = sum3+CC[cnt];
}
mav3 = sum3/P3;
}
if CC[P4-1] > 0 then
{
sum4 = 0;
for cnt = 0 to P4-1
{
sum4 = sum4+CC[cnt];
}
mav4 = sum4/P4;
}
if CC[P5-1] > 0 then
{
sum5 = 0;
for cnt = 0 to P5-1
{
sum5 = sum5+CC[cnt];
}
mav5 = sum5/P5;
}
if (hh >= mav1 and hh1 < mav11) or (ll <= mav1 and ll1 > mav11) Then
{
value1 = mav1;
Alert("P1이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav2 and hh1 < mav21) or (ll <= mav2 and ll1 > mav21) Then
{
value2 = mav2;
Alert("P2이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav3 and hh1 < mav31) or (ll <= mav3 and ll1 > mav31) Then
{
value3 = mav3;
Alert("P3이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav4 and hh1 < mav41) or (ll <= mav4 and ll1 > mav41) Then
{
value4 = mav4;
Alert("P4이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if (hh >= mav5 and hh1 < mav51) or (ll <= mav5 and ll1 > mav51) Then
{
value5 = mav5;
Alert("P4이평 터치");
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
if value1 > 0 Then
Plot1(value1);
if value2 > 0 Then
Plot2(value2);
if value3 > 0 Then
Plot3(value3);
if value4 > 0 Then
Plot4(value4);
if value5 > 0 Then
Plot5(value5);
}