커뮤니티
문의드립니다
2014-10-26 22:10:36
168
글번호 79760
###################################################################################
var : GHLC(0);
GHLC == (3 * Ema(C,10)) - (3 * Ema(Ema(C,10),10)) + (Ema(Ema(Ema(C,10),10),10));
###################################################################################
1. 100틱차트에서 200틱의 GHLC값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
2. 2분봉차트에서 4분봉의 GHLC값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
###################################################################################
array : mav[12](0);
mav[1] = ema(GHLC,14+3*1);
mav[2] = ema(GHLC,14+3*2);
mav[3] = ema(GHLC,14+3*3);
mav[4] = ema(GHLC,14+3*4);
mav[5] = ema(GHLC,14+3*5);
mav[6] = ema(GHLC,14+3*6);
mav[7] = ema(GHLC,14+3*7);
mav[8] = ema(GHLC,14+3*8);
mav[9] = ema(GHLC,14+3*9);
mav[10] = ema(GHLC,14+3*10);
mav[11] = ema(GHLC,14+3*11);
mav[12] = ema(GHLC,14+3*12);
###################################################################################
3. 100틱차트에서 200틱의 각 mav 배열값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
4. 2분봉차트에서 4분봉의 각 mav 배열값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
Var:j(0),k(0),계산주기(0),X(0),sumXY(0),sumX(0),sumY(0),sumX²(0),
MinLRS(0),MinB(0),MinLRL(0),주(2),n(19);
Array:MinClose[100](0);
if 주 >= BarInterval then {
계산주기 = 주/BarInterval;
}
k = k + 1;
if DayIndex()%계산주기 == 0 then {
for j = 98 downto 0 {
MinClose[j+1] = MinClose[j];
}
X = X + 1;
k = 0;
}
MinClose[0] = C;
sumXY = 0; sumX = 0; sumY = 0; sumX² = 0;
For j = 0 To n-1 {
sumXY = sumXY + (X-j)*MinClose[j];
sumX = sumX + (X-j);
sumY = sumY + MinClose[j];
sumX²= sumX²+ (X-j)^2;
}
MinLRS = (n*sumXY - sumX*sumY)/(n*sumX²- sumX^2);
MinB = (sumY*sumX²-sumX*sumXY)/(n*sumX²- sumX^2);
MinLRL = MinLRS * X + MinB;
Value1 = MinLRL;
100틱챠트에서 200틱챠트의 Value1를 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
###################################################################################
답변 1
예스스탁 예스스탁 답변
2014-10-27 17:20:56
안녕하세요
예스스탁입니다.
1.Input : N(2),P(10);
Var : Ep(0),JISU1(0),JISU2(0),JISU3(0),PreJISU1(0),PreJISU2(0),PreJISU3(0),idx(0);
var : GHLC(0),TF(0);
Array : mav[13](0);
TF = dayindex%N;
Ep = 2/(P+1);
if dayindex() == 0 or TF < TF[1] Then{
idx = idx+1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
}
if idx <= 1 then {
JISU1 = C;
JISU2 = JISU1;
JISU3 = JISU2;
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
}
else{
JISU1 = C * EP + PreJISU1 * (1-EP);
JISU2 = JISU1 * EP + PreJISU2 * (1-EP);
JISU3 = JISU2 * EP + PreJISU3 * (1-EP);
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
}
plot1(GHLC);
2.
Input : Ntime(4),P(10);
Var : Ep(0),JISU1(0),JISU2(0),JISU3(0),PreJISU1(0),PreJISU2(0),PreJISU3(0),idx(0);
var : GHLC(0),TF(0);
TF = TimeToMinutes(stime)%Ntime;
Ep = 2/(P+1);
if dayindex() == 0 or TF < TF[1] or stime == 151400 Then{
idx = idx+1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
}
if idx <= 1 then {
JISU1 = C;
JISU2 = JISU1;
JISU3 = JISU2;
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
}
else{
JISU1 = C * EP + PreJISU1 * (1-EP);
JISU2 = JISU1 * EP + PreJISU2 * (1-EP);
JISU3 = JISU2 * EP + PreJISU3 * (1-EP);
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
}
plot1(GHLC);
3.
Input : N(2),P(10);
Var : Ep(0),JISU1(0),JISU2(0),JISU3(0),PreJISU1(0),PreJISU2(0),PreJISU3(0),idx(0);
var : GHLC(0),TF(0),EP1(0),EP2(0),EP3(0),EP4(0),EP5(0),EP6(0),EP7(0),EP8(0),EP9(0),EP10(0),EP11(0),EP12(0);
var : mav1(0),mav2(0),mav3(0),mav4(0),mav5(0),mav6(0),mav7(0),mav8(0),mav9(0),mav10(0),mav11(0),mav12(0);
Array : mav[13](0);
TF = dayindex%N;
Ep = 2/(P+1);
EP1 = 2/((14+3*1)+1);
EP2 = 2/((14+3*2)+1);
EP3 = 2/((14+3*3)+1);
EP4 = 2/((14+3*4)+1);
EP5 = 2/((14+3*5)+1);
EP6 = 2/((14+3*6)+1);
EP7 = 2/((14+3*7)+1);
EP8 = 2/((14+3*8)+1);
EP9 = 2/((14+3*9)+1);
EP10 = 2/((14+3*10)+1);
EP11 = 2/((14+3*11)+1);
EP12 = 2/((14+3*12)+1);
if dayindex() == 0 or TF < TF[1] Then{
idx = idx+1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
mav1 = mav[1][1];
mav2 = mav[2][1];
mav3 = mav[3][1];
mav4 = mav[4][1];
mav5 = mav[5][1];
mav6 = mav[6][1];
mav7 = mav[7][1];
mav8 = mav[8][1];
mav9 = mav[9][1];
mav10 = mav[10][1];
mav11 = mav[11][1];
mav12 = mav[12][1];
}
if idx <= 1 then {
JISU1 = C;
JISU2 = JISU1;
JISU3 = JISU2;
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
mav[1] = GHLC;
mav[2] = GHLC;
mav[3] = GHLC;
mav[4] = GHLC;
mav[5] = GHLC;
mav[6] = GHLC;
mav[7] = GHLC;
mav[8] = GHLC;
mav[9] = GHLC;
mav[10] = GHLC;
mav[11] = GHLC;
mav[12] = GHLC;
}
else{
JISU1 = C * EP + PreJISU1 * (1-EP);
JISU2 = JISU1 * EP + PreJISU2 * (1-EP);
JISU3 = JISU2 * EP + PreJISU3 * (1-EP);
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
mav[1] = GHLC * EP1 + mav1 * (1-EP1);
mav[2] = GHLC * EP2 + mav2 * (1-EP2);
mav[3] = GHLC * EP3 + mav3 * (1-EP3);
mav[4] = GHLC * EP4 + mav4 * (1-EP4);
mav[5] = GHLC * EP5 + mav5 * (1-EP5);
mav[6] = GHLC * EP6 + mav6 * (1-EP6);
mav[7] = GHLC * EP7 + mav7 * (1-EP7);
mav[8] = GHLC * EP8 + mav8 * (1-EP8);
mav[9] = GHLC * EP9 + mav9 * (1-EP9);
mav[10] = GHLC * EP10 + mav10 * (1-EP10);
mav[11] = GHLC * EP11 + mav11 * (1-EP11);
mav[12] = GHLC * EP12 + mav12 * (1-EP12);
}
plot1(mav[1]);
plot2(mav[2]);
plot3(mav[3]);
plot4(mav[4]);
plot5(mav[5]);
plot6(mav[6]);
plot7(mav[7]);
plot8(mav[8]);
plot9(mav[9]);
plot10(mav[10]);
plot11(mav[11]);
plot12(mav[12]);
4.
Input : Ntime(4),P(10);
Var : Ep(0),JISU1(0),JISU2(0),JISU3(0),PreJISU1(0),PreJISU2(0),PreJISU3(0),idx(0);
var : GHLC(0),TF(0),EP1(0),EP2(0),EP3(0),EP4(0),EP5(0),EP6(0),EP7(0),EP8(0),EP9(0),EP10(0),EP11(0),EP12(0);
var : mav1(0),mav2(0),mav3(0),mav4(0),mav5(0),mav6(0),mav7(0),mav8(0),mav9(0),mav10(0),mav11(0),mav12(0);
Array : mav[13](0);
TF = TimeToMinutes(stime)%Ntime;
Ep = 2/(P+1);
EP1 = 2/((14+3*1)+1);
EP2 = 2/((14+3*2)+1);
EP3 = 2/((14+3*3)+1);
EP4 = 2/((14+3*4)+1);
EP5 = 2/((14+3*5)+1);
EP6 = 2/((14+3*6)+1);
EP7 = 2/((14+3*7)+1);
EP8 = 2/((14+3*8)+1);
EP9 = 2/((14+3*9)+1);
EP10 = 2/((14+3*10)+1);
EP11 = 2/((14+3*11)+1);
EP12 = 2/((14+3*12)+1);
if dayindex() == 0 or TF < TF[1] or stime == 151400 Then{
idx = idx+1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
mav1 = mav[1][1];
mav2 = mav[2][1];
mav3 = mav[3][1];
mav4 = mav[4][1];
mav5 = mav[5][1];
mav6 = mav[6][1];
mav7 = mav[7][1];
mav8 = mav[8][1];
mav9 = mav[9][1];
mav10 = mav[10][1];
mav11 = mav[11][1];
mav12 = mav[12][1];
}
if idx <= 1 then {
JISU1 = C;
JISU2 = JISU1;
JISU3 = JISU2;
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
mav[1] = GHLC;
mav[2] = GHLC;
mav[3] = GHLC;
mav[4] = GHLC;
mav[5] = GHLC;
mav[6] = GHLC;
mav[7] = GHLC;
mav[8] = GHLC;
mav[9] = GHLC;
mav[10] = GHLC;
mav[11] = GHLC;
mav[12] = GHLC;
}
else{
JISU1 = C * EP + PreJISU1 * (1-EP);
JISU2 = JISU1 * EP + PreJISU2 * (1-EP);
JISU3 = JISU2 * EP + PreJISU3 * (1-EP);
GHLC = (3 * JISU1) - (3 * JISU2) + (JISU3);
mav[1] = GHLC * EP1 + mav1 * (1-EP1);
mav[2] = GHLC * EP2 + mav2 * (1-EP2);
mav[3] = GHLC * EP3 + mav3 * (1-EP3);
mav[4] = GHLC * EP4 + mav4 * (1-EP4);
mav[5] = GHLC * EP5 + mav5 * (1-EP5);
mav[6] = GHLC * EP6 + mav6 * (1-EP6);
mav[7] = GHLC * EP7 + mav7 * (1-EP7);
mav[8] = GHLC * EP8 + mav8 * (1-EP8);
mav[9] = GHLC * EP9 + mav9 * (1-EP9);
mav[10] = GHLC * EP10 + mav10 * (1-EP10);
mav[11] = GHLC * EP11 + mav11 * (1-EP11);
mav[12] = GHLC * EP12 + mav12 * (1-EP12);
}
plot1(mav[1]);
plot2(mav[2]);
plot3(mav[3]);
plot4(mav[4]);
plot5(mav[5]);
plot6(mav[6]);
plot7(mav[7]);
plot8(mav[8]);
plot9(mav[9]);
plot10(mav[10]);
plot11(mav[11]);
plot12(mav[12]);
5.
추가로 올리신 내용은 기본차트 자체에서 어떻게 변경을 해드려야 할지 모르겠습니다.
해당식은 식 자체가 다른주기의 값을 계산하는 식입니다.
도움을 들리지 못해 죄송합니다.
즐거운 하루되세요
> 까시서방 님이 쓴 글입니다.
> 제목 : 문의드립니다
> ###################################################################################
var : GHLC(0);
GHLC == (3 * Ema(C,10)) - (3 * Ema(Ema(C,10),10)) + (Ema(Ema(Ema(C,10),10),10));
###################################################################################
1. 100틱차트에서 200틱의 GHLC값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
2. 2분봉차트에서 4분봉의 GHLC값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
###################################################################################
array : mav[12](0);
mav[1] = ema(GHLC,14+3*1);
mav[2] = ema(GHLC,14+3*2);
mav[3] = ema(GHLC,14+3*3);
mav[4] = ema(GHLC,14+3*4);
mav[5] = ema(GHLC,14+3*5);
mav[6] = ema(GHLC,14+3*6);
mav[7] = ema(GHLC,14+3*7);
mav[8] = ema(GHLC,14+3*8);
mav[9] = ema(GHLC,14+3*9);
mav[10] = ema(GHLC,14+3*10);
mav[11] = ema(GHLC,14+3*11);
mav[12] = ema(GHLC,14+3*12);
###################################################################################
3. 100틱차트에서 200틱의 각 mav 배열값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
4. 2분봉차트에서 4분봉의 각 mav 배열값을 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
Var:j(0),k(0),계산주기(0),X(0),sumXY(0),sumX(0),sumY(0),sumX²(0),
MinLRS(0),MinB(0),MinLRL(0),주(2),n(19);
Array:MinClose[100](0);
if 주 >= BarInterval then {
계산주기 = 주/BarInterval;
}
k = k + 1;
if DayIndex()%계산주기 == 0 then {
for j = 98 downto 0 {
MinClose[j+1] = MinClose[j];
}
X = X + 1;
k = 0;
}
MinClose[0] = C;
sumXY = 0; sumX = 0; sumY = 0; sumX² = 0;
For j = 0 To n-1 {
sumXY = sumXY + (X-j)*MinClose[j];
sumX = sumX + (X-j);
sumY = sumY + MinClose[j];
sumX²= sumX²+ (X-j)^2;
}
MinLRS = (n*sumXY - sumX*sumY)/(n*sumX²- sumX^2);
MinB = (sumY*sumX²-sumX*sumXY)/(n*sumX²- sumX^2);
MinLRL = MinLRS * X + MinB;
Value1 = MinLRL;
100틱챠트에서 200틱챠트의 Value1를 참조데이타(Data2)를 쓰지않고 나타내고 싶습니다
###################################################################################
다음글