커뮤니티
수식부탁드립니다---------------
2017-01-08 16:07:19
114
글번호 105659
1) 아래 PLOT13 과 PLOT14는 2개의 tema값 인데 전일데이타는 반영치말고 당일데이타만 반영하게해주시면 감사하겠슴니다
2) PLOT18 과 PLOT19 가 꼭지점을 지난후 신호가 나오는데 이를 꼭지점에서 신호가나오게
할수는 없나요 부탁드립니다
감사합니다
Input :호가더하기(10),폭보정(20),지수호가테마LENGTH1(10),순매수LENGTH2(30);
var : AsksMA(20),BidsMA(12), Period(10),지수더하기(500);
Var : value(0);
Var : valuec(0);
var : va80(0);
var : va81(0);
var : va90(0);
var : va91(0);
var : va92(0);
var : va93(0);
var : va94(0);
var : va95(0);
VAR : TEMA1(0);
VAR : TEMA2(0);
VAR : TEMA3(0);
VAR : vmin(0);
VAR : vmax(0);
BidsMa = ma(bids,Period);
AsksMA = ma(asks,Period);
value = ma(bids,period)-ma(asks,period)+11000;
Plot2(BidsMA, "매수잔량이평");
Plot3(AsksMA, "매도잔량이평");
Plot4(value, "차");
va90=((c-c[1])/c[1]*100)*21000;
plot74(va90,"지수변폭");
va92=((value-value[1])/value[1]*100)*125;
plot75(va92,"호가변폭");
va91=((c-c[1])/c[1]*100)*20000/21000;
va93=((value-value[1])/value[1]*100)*150/17000;
if Bdate != Bdate[1] Then{
var1 = 500;
var2 = 500;
plot10(var1);
plot11(var2);
plot51(var2+호가더하기);
}
Else{
var1 = var1+(var1*(va91/100));
var2 = var2+(var2*(va93/100));
plot10(var1+지수더하기);
plot11(var2+호가더하기);
plot51(var2+호가더하기);
TEMA3 = (3 * Ema(var2+호가더하기,순매수LENGTH2)) - (3 * Ema(Ema(var2+호가더하기,순매수LENGTH2),순매수LENGTH2)) +
(Ema(Ema(Ema(var2+호가더하기,순매수LENGTH2),순매수LENGTH2),순매수LENGTH2));
plot52(TEMA3,"순매수테마");
}
if var2-var1 > 폭보정 Then var2=var1;
if var1-var2 > 폭보정 Then var2=var1;
TEMA1 = (3 * Ema(var1,지수호가테마LENGTH1)) - (3 * Ema(Ema(var1,지수호가테마LENGTH1),지수호가테마LENGTH1)) +
(Ema(Ema(Ema(var1,지수호가테마LENGTH1),지수호가테마LENGTH1),지수호가테마LENGTH1));
TEMA2 = (3 * Ema(var2,지수호가테마LENGTH1)) - (3 * Ema(Ema(var2,지수호가테마LENGTH1),지수호가테마LENGTH1)) +
(Ema(Ema(Ema(var2,지수호가테마LENGTH1),지수호가테마LENGTH1),지수호가테마LENGTH1));
PLOT13(TEMA1+지수더하기,"지수테마");
PLOT14(TEMA2+호가더하기,"호가테마");
if TEMA1[1]< TEMA1 and TEMA2[1]< TEMA2 then {
PLOT15(vmin-0.05,"매수유리");
}
if TEMA1[1]> TEMA1 and TEMA2[1]> TEMA2 Then{
PLOT16(vmin-0.05,"매도유리");
}
vmin = min(TEMA1+지수더하기,TEMA2+호가더하기,var2+호가더하기);
vmax = max(TEMA1+지수더하기,TEMA2+호가더하기,var2+호가더하기);
if TEMA1+지수더하기 > TEMA2+호가더하기 Then{
var80 = (TEMA1+지수더하기 - TEMA2+호가더하기)*0.5+TEMA2+호가더하기;
}
if TEMA1+지수더하기 < TEMA2+호가더하기 Then{
var80 = (TEMA2+호가더하기-TEMA1+지수더하기 )*0.5+TEMA1+지수더하기;
}
PLOT17(var80,"지호평균");
if var80[2] <var80[1] and var80[1] > var80 Then{
PLOT18(var80+0.1,"매도");
PlaySound("C:예스트레이더dataSoundalert.wav");
}
if var80[2] >var80[1] and var80[1] < var80 Then{
PLOT19(var80-0.1,"매수");
PlaySound("C:예스트레이더dataSoundalert.wav");
}
답변 1
예스스탁 예스스탁 답변
2017-01-09 09:43:51
안녕하세요
예스스탁입니다.
2번은 가능하지 않습니다.
Input :호가더하기(10),폭보정(20),지수호가테마LENGTH1(10),순매수LENGTH2(30);
var : AsksMA(20),BidsMA(12), Period(10),지수더하기(500),idx(0),EP(0),E11(0),E12(0),E13(0),E21(0),E22(0),E23(0);
Var : value(0);
Var : valuec(0);
var : va80(0);
var : va81(0);
var : va90(0);
var : va91(0);
var : va92(0);
var : va93(0);
var : va94(0);
var : va95(0);
VAR : TEMA1(0);
VAR : TEMA2(0);
VAR : TEMA3(0);
VAR : vmin(0);
VAR : vmax(0);
BidsMa = ma(bids,Period);
AsksMA = ma(asks,Period);
value = ma(bids,period)-ma(asks,period)+11000;
Plot2(BidsMA, "매수잔량이평");
Plot3(AsksMA, "매도잔량이평");
Plot4(value, "차");
va90=((c-c[1])/c[1]*100)*21000;
plot74(va90,"지수변폭");
va92=((value-value[1])/value[1]*100)*125;
plot75(va92,"호가변폭");
va91=((c-c[1])/c[1]*100)*20000/21000;
va93=((value-value[1])/value[1]*100)*150/17000;
if Bdate != Bdate[1] Then{
idx = 0;
var1 = 500;
var2 = 500;
plot10(var1);
plot11(var2);
plot51(var2+호가더하기);
}
Else{
idx = idx+1;
var1 = var1+(var1*(va91/100));
var2 = var2+(var2*(va93/100));
plot10(var1+지수더하기);
plot11(var2+호가더하기);
plot51(var2+호가더하기);
TEMA3 = (3 * Ema(var2+호가더하기,순매수LENGTH2)) - (3 * Ema(Ema(var2+호가더하기,순매수LENGTH2),순매수LENGTH2)) +
(Ema(Ema(Ema(var2+호가더하기,순매수LENGTH2),순매수LENGTH2),순매수LENGTH2));
plot52(TEMA3,"순매수테마");
}
if var2-var1 > 폭보정 Then var2=var1;
if var1-var2 > 폭보정 Then var2=var1;
EP = 2/(지수호가테마LENGTH1+1);
if idx == 0 Then{
E11 = var1;
E21 = var2;
}
Else{
E11 = var1 * EP + E11 * (1-EP);
E21 = var2 * EP + E21 * (1-EP);
}
if idx <= 1 Then{
E12 = E11;
E22 = E21;
}
Else{
E12 = E11 * EP + E12 * (1-EP);
E22 = E21 * EP + E22 * (1-EP);
}
if idx <= 2 Then{
E13 = E12;
E23 = E22;
}
Else{
E13 = E12 * EP + E13 * (1-EP);
E23 = E22 * EP + E23 * (1-EP);
}
TEMA1 = (3 * E11) - (3 * E12) + (E13);
TEMA2 = (3 * E21) - (3 * E22) + (E23);
PLOT13(TEMA1+지수더하기,"지수테마");
PLOT14(TEMA2+호가더하기,"호가테마");
if TEMA1[1]< TEMA1 and TEMA2[1]< TEMA2 then {
PLOT15(vmin-0.05,"매수유리");
}
if TEMA1[1]> TEMA1 and TEMA2[1]> TEMA2 Then{
PLOT16(vmin-0.05,"매도유리");
}
vmin = min(TEMA1+지수더하기,TEMA2+호가더하기,var2+호가더하기);
vmax = max(TEMA1+지수더하기,TEMA2+호가더하기,var2+호가더하기);
if TEMA1+지수더하기 > TEMA2+호가더하기 Then{
var80 = (TEMA1+지수더하기 - TEMA2+호가더하기)*0.5+TEMA2+호가더하기;
}
if TEMA1+지수더하기 < TEMA2+호가더하기 Then{
var80 = (TEMA2+호가더하기-TEMA1+지수더하기 )*0.5+TEMA1+지수더하기;
}
PLOT17(var80,"지호평균");
if var80[2] <var80[1] and var80[1] > var80 Then{
PLOT18(var80+0.1,"매도");
PlaySound("C:예스트레이더dataSoundalert.wav");
}
if var80[2] >var80[1] and var80[1] < var80 Then{
PLOT19(var80-0.1,"매수");
PlaySound("C:예스트레이더dataSoundalert.wav");
}
즐거운 하루되세요
> leekss1 님이 쓴 글입니다.
> 제목 : 수식부탁드립니다---------------
> 1) 아래 PLOT13 과 PLOT14는 2개의 tema값 인데 전일데이타는 반영치말고 당일데이타만 반영하게해주시면 감사하겠슴니다
2) PLOT18 과 PLOT19 가 꼭지점을 지난후 신호가 나오는데 이를 꼭지점에서 신호가나오게
할수는 없나요 부탁드립니다
감사합니다
Input :호가더하기(10),폭보정(20),지수호가테마LENGTH1(10),순매수LENGTH2(30);
var : AsksMA(20),BidsMA(12), Period(10),지수더하기(500);
Var : value(0);
Var : valuec(0);
var : va80(0);
var : va81(0);
var : va90(0);
var : va91(0);
var : va92(0);
var : va93(0);
var : va94(0);
var : va95(0);
VAR : TEMA1(0);
VAR : TEMA2(0);
VAR : TEMA3(0);
VAR : vmin(0);
VAR : vmax(0);
BidsMa = ma(bids,Period);
AsksMA = ma(asks,Period);
value = ma(bids,period)-ma(asks,period)+11000;
Plot2(BidsMA, "매수잔량이평");
Plot3(AsksMA, "매도잔량이평");
Plot4(value, "차");
va90=((c-c[1])/c[1]*100)*21000;
plot74(va90,"지수변폭");
va92=((value-value[1])/value[1]*100)*125;
plot75(va92,"호가변폭");
va91=((c-c[1])/c[1]*100)*20000/21000;
va93=((value-value[1])/value[1]*100)*150/17000;
if Bdate != Bdate[1] Then{
var1 = 500;
var2 = 500;
plot10(var1);
plot11(var2);
plot51(var2+호가더하기);
}
Else{
var1 = var1+(var1*(va91/100));
var2 = var2+(var2*(va93/100));
plot10(var1+지수더하기);
plot11(var2+호가더하기);
plot51(var2+호가더하기);
TEMA3 = (3 * Ema(var2+호가더하기,순매수LENGTH2)) - (3 * Ema(Ema(var2+호가더하기,순매수LENGTH2),순매수LENGTH2)) +
(Ema(Ema(Ema(var2+호가더하기,순매수LENGTH2),순매수LENGTH2),순매수LENGTH2));
plot52(TEMA3,"순매수테마");
}
if var2-var1 > 폭보정 Then var2=var1;
if var1-var2 > 폭보정 Then var2=var1;
TEMA1 = (3 * Ema(var1,지수호가테마LENGTH1)) - (3 * Ema(Ema(var1,지수호가테마LENGTH1),지수호가테마LENGTH1)) +
(Ema(Ema(Ema(var1,지수호가테마LENGTH1),지수호가테마LENGTH1),지수호가테마LENGTH1));
TEMA2 = (3 * Ema(var2,지수호가테마LENGTH1)) - (3 * Ema(Ema(var2,지수호가테마LENGTH1),지수호가테마LENGTH1)) +
(Ema(Ema(Ema(var2,지수호가테마LENGTH1),지수호가테마LENGTH1),지수호가테마LENGTH1));
PLOT13(TEMA1+지수더하기,"지수테마");
PLOT14(TEMA2+호가더하기,"호가테마");
if TEMA1[1]< TEMA1 and TEMA2[1]< TEMA2 then {
PLOT15(vmin-0.05,"매수유리");
}
if TEMA1[1]> TEMA1 and TEMA2[1]> TEMA2 Then{
PLOT16(vmin-0.05,"매도유리");
}
vmin = min(TEMA1+지수더하기,TEMA2+호가더하기,var2+호가더하기);
vmax = max(TEMA1+지수더하기,TEMA2+호가더하기,var2+호가더하기);
if TEMA1+지수더하기 > TEMA2+호가더하기 Then{
var80 = (TEMA1+지수더하기 - TEMA2+호가더하기)*0.5+TEMA2+호가더하기;
}
if TEMA1+지수더하기 < TEMA2+호가더하기 Then{
var80 = (TEMA2+호가더하기-TEMA1+지수더하기 )*0.5+TEMA1+지수더하기;
}
PLOT17(var80,"지호평균");
if var80[2] <var80[1] and var80[1] > var80 Then{
PLOT18(var80+0.1,"매도");
PlaySound("C:예스트레이더dataSoundalert.wav");
}
if var80[2] >var80[1] and var80[1] < var80 Then{
PLOT19(var80-0.1,"매수");
PlaySound("C:예스트레이더dataSoundalert.wav");
}