커뮤니티
다시한번 부탁드립니다.
2014-06-12 20:33:34
140
글번호 75803
안녕하세요?
수식을 잘 받았습니다. 감사드립니다.
그런데 다시 36619번 관련 수식 적용방법에 관한 질문입니다.
수식적용차트가 data1-->5분봉, data2 ---> 20분봉, data3 -->200분봉 또는
data1-->일봉, data2 ---> 주봉, data3 -->월봉
으로 적용하면 신호가 나오는데
data1-->분봉, data2 ---> 일봉, data3 -->주봉 또는 월봉
이런식으로 적용하면 신호가 나오지 않습니다.
해결방법 좀 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2014-06-13 11:41:37
안녕하세요
예스스탁입니다.
다른주기를 사용하실 때는
변수를 직접 만드시고 데이터번호 지정해 주시기 바랍니다.
해당 주기로 이전값과 비교를 해야 하므로
해당 부분이 반드시 필요합니다.
참조데이터를 사용하는 모든 식에는
변수는 직접 만들고 선언에 데이터번호를 지정해서 사용해야 한다고 생각하시면 됩니다.
Input : 투입금액(300000);
var : vol1(0,data1),vol2(0,data2), xvol(0,data1);
var : buycond(False,data1);
input : P1(5),P2(60),P3(200);
var : status3(0,data3), status2(0,data2), status1(0,data1);
var : V1(0,data1),V2(0,data1),v3(0,data1),v4(0,data1);
var : V21(0,data2),V22(0,data2),v23(0,data2),v24(0,data2);
var : V31(0,data3),V32(0,data3),v33(0,data3),v34(0,data3);
If CodeCategoryex == 11 Then{
if BasePrice < 50000 Then{
vol1 = int(int((투입금액*1.00)/C)/10)*10;
vol2 = int(int((투입금액*0.50)/C)/10)*10;
}
else{
vol1 = int(int((투입금액*1.00)/C)/10)*10;
vol2 = int(int((투입금액*0.80)/C)/10)*10;
}
}
Else{
vol1 = int((투입금액*1.00)/C);
vol2 = int((투입금액*0.50)/C);
}
//*---data3(장기봉) 조건설정하기 위함-----------------------*/
v31 = data3(ema(c,P1));
v32 = data3(ema(c,P2));
v33 = data3(ema(c,P3));
v34 = data3(ma(c,10));
if v33 > v33[1] Then
status3 = 1;
else if v33 < v33[1] Then
status3 = -1;
else
status3= 0;
//*---data2(중기봉) 조건설정하기 위함-----------------*/
v21 = data2(ema(c,P1));
v22 = data2(ema(c,P2));
v23 = data2(ema(c,P3));
v24 = data2(ma(c,10));
if v22 > v22[1] Then
status2 = 1;
else if v22 < v22[1] Then
status2 = -1;
else
status2= 0;
//*----data(단기) 조건설정하기 위함--------------------*/
v1 = data1(ema(c,P1));
v2 = data1(ema(c,P2));
v3 = data1(ema(c,P3));
v4 = data1(ma(c,10));
if v1 > v1[1] Then
status1 = 1;
else if v1 < v1[1] Then
status1 = -1;
else
status1= 0;
//* 3개 주기가 빨간 상태를 표시----------------*/
buycond = status3 == 1 and status2 == 1 and status1 == 1;
//* 주기가 빨간 상태를 표시----------------*/
if MarketPosition == 0 and buycond == true and buycond[1] == false Then
buy("B",OnClose,def,vol1);
if MarketPosition == 1 Then{
//*-----현재 진입계약수를 절반만 구함 ------*/
if CodeCategoryEx == 11 and BasePrice < 50000 Then
xvol = int((CurrentContracts*0.5)/10)*10;
Else
xvol = int(CurrentContracts*0.5);
if status2 == 1 and status1 == 1 and status1[1] != 1 Then
buy("b1",OnClose,def,vol1);
if status2 == 1 and status1 == -1 and status1[1] != -1 Then
ExitLong("bx1",OnClose,def,"",xvol,2);
if status2 == -1 and status1 == 1 and status1[1] != 1 Then
buy("b2",OnClose,def,vol2);
if status2 == -1 and status1 == -1 and status1[1] != -1 Then
ExitLong("bx2",OnClose,def,"",xvol,2);
}
SetStopLoss(7,PercentStop);
즐거운 하루되세요
> 에리조나 님이 쓴 글입니다.
> 제목 : 다시한번 부탁드립니다.
> 안녕하세요?
수식을 잘 받았습니다. 감사드립니다.
그런데 다시 36619번 관련 수식 적용방법에 관한 질문입니다.
수식적용차트가 data1-->5분봉, data2 ---> 20분봉, data3 -->200분봉 또는
data1-->일봉, data2 ---> 주봉, data3 -->월봉
으로 적용하면 신호가 나오는데
data1-->분봉, data2 ---> 일봉, data3 -->주봉 또는 월봉
이런식으로 적용하면 신호가 나오지 않습니다.
해결방법 좀 부탁드립니다.
다음글
이전글