커뮤니티
수량이 안실렸다??
2009-05-22 11:38:43
553
글번호 22358
최근 문의드려 도움받아
제가 원하는 신호가 잘 나옵니다.
이미 수동매수한 상태에서 매도용도로만 시스템으로 할려고용.
그런데 시험/경보말고 자동매매 체크해도
실제로 매수가 안나갑니다. 신호만 나옵니다.
그 원인은 시스템이 보유수량의 인식없어 실제주문이 안나갑니다??
신호안내팝업이 자동주문까지 나갈 수 있도록 안내바랍니다@@@@@^^^^^^@@@@@@@
INPUT: 단가(10650),수량(1042),일자(20090521),시각(134500);
IF CodeCategory==1 THEN BEGIN
IF BasePrice>=50000 THEN Var1=int((수량/2)/2);
ELSE Var1=int(int((수량/2)/2)/10)*10; END
IF CodeCategory==2 THEN Var1=int((수량/2)/2);
Var2=수량-Var1;
Var3=수량-(2*Var1);
IF sdate>=일자 AND stime>=시각 AND L<=단가 THEN
BUY("매수",OnClose,def,수량);
IF MarketPosition==1 THEN BEGIN
IF CurrentContracts==수량 THEN BEGIN
exitlong("L1",AtStop,단가*0.85,"",수량,1);
exitlong("P1",AtLimit,단가*1.1,"",Var1,1); END
IF CurrentContracts==수량-Var1 THEN BEGIN
exitlong("L2",AtStop,단가*1.0035,"",Var2,1);
exitlong("P2",AtLimit,단가*1.2,"",Var1,1); END
IF CurrentContracts==수량-(2*Var1) THEN
exitlong("L3",AtStop,단가*0.9,"",Var3,1); END
답변 2
예스스탁 예스스탁 답변
2009-05-22 15:49:31
안녕하세요
예스스탁입니다.
수동으로 진입한 부분에 대해서 청산만 하는 식은
시스템식이 진입이 있어야 청산이 나가므로
진입은 과거봉에 임의로 신호를 만들어 발생시키고
진입이후 현재시점과 사이에 청산이 발생할 수 있으므로
청산을 현재날짜와 시간이후에만 발생할수 있게 해주시면 됩니다.
그러므로 진입은 수량을 지정해서 과거 첫봉이나 임의의 봉에 찍으시면 됩니다.
INPUT: 단가(10650),수량(1042),일자(20090521),시각(134500);
IF CodeCategory==1 THEN BEGIN
IF BasePrice>=50000 THEN
Var1=int((수량/2)/2);
ELSE
Var1=int(int((수량/2)/2)/10)*10;
END
IF CodeCategory==2 THEN
Var1=int((수량/2)/2);
Var2=수량-Var1;
Var3=수량-(2*Var1);
IF index == 0 THEN
BUY("매수",OnClose,def,수량);
IF sdate >= 일자 and stime > 시각 and MarketPosition==1 THEN {
IF CurrentContracts==수량 THEN {
exitlong("L1",AtStop,단가*0.85,"",수량,1);
exitlong("P1",AtLimit,단가*1.1,"",Var1,1);
}
IF CurrentContracts==수량-Var1 THEN {
exitlong("L2",AtStop,단가*1.0035,"",Var2,1);
exitlong("P2",AtLimit,단가*1.2,"",Var1,1);
}
IF CurrentContracts==수량-(2*Var1) THEN{
exitlong("L3",AtStop,단가*0.9,"",Var3,1);
}
}
따로 강제청산등은 설정하시면 안됩니다.
즐거운 하루되세요
> 검은펜 님이 쓴 글입니다.
> 제목 : 수량이 안실렸다??
> 최근 문의드려 도움받아
제가 원하는 신호가 잘 나옵니다.
이미 수동매수한 상태에서 매도용도로만 시스템으로 할려고용.
그런데 시험/경보말고 자동매매 체크해도
실제로 매수가 안나갑니다. 신호만 나옵니다.
그 원인은 시스템이 보유수량의 인식없어 실제주문이 안나갑니다??
신호안내팝업이 자동주문까지 나갈 수 있도록 안내바랍니다@@@@@^^^^^^@@@@@@@
INPUT: 단가(10650),수량(1042),일자(20090521),시각(134500);
IF CodeCategory==1 THEN BEGIN
IF BasePrice>=50000 THEN Var1=int((수량/2)/2);
ELSE Var1=int(int((수량/2)/2)/10)*10; END
IF CodeCategory==2 THEN Var1=int((수량/2)/2);
Var2=수량-Var1;
Var3=수량-(2*Var1);
IF sdate>=일자 AND stime>=시각 AND L<=단가 THEN
BUY("매수",OnClose,def,수량);
IF MarketPosition==1 THEN BEGIN
IF CurrentContracts==수량 THEN BEGIN
exitlong("L1",AtStop,단가*0.85,"",수량,1);
exitlong("P1",AtLimit,단가*1.1,"",Var1,1); END
IF CurrentContracts==수량-Var1 THEN BEGIN
exitlong("L2",AtStop,단가*1.0035,"",Var2,1);
exitlong("P2",AtLimit,단가*1.2,"",Var1,1); END
IF CurrentContracts==수량-(2*Var1) THEN
exitlong("L3",AtStop,단가*0.9,"",Var3,1); END
회원
2009-05-22 17:32:44
감사합니다. 조은 주말 보내세요.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수량이 안실렸다??
> 안녕하세요
예스스탁입니다.
수동으로 진입한 부분에 대해서 청산만 하는 식은
시스템식이 진입이 있어야 청산이 나가므로
진입은 과거봉에 임의로 신호를 만들어 발생시키고
진입이후 현재시점과 사이에 청산이 발생할 수 있으므로
청산을 현재날짜와 시간이후에만 발생할수 있게 해주시면 됩니다.
그러므로 진입은 수량을 지정해서 과거 첫봉이나 임의의 봉에 찍으시면 됩니다.
INPUT: 단가(10650),수량(1042),일자(20090521),시각(134500);
IF CodeCategory==1 THEN BEGIN
IF BasePrice>=50000 THEN
Var1=int((수량/2)/2);
ELSE
Var1=int(int((수량/2)/2)/10)*10;
END
IF CodeCategory==2 THEN
Var1=int((수량/2)/2);
Var2=수량-Var1;
Var3=수량-(2*Var1);
IF index == 0 THEN
BUY("매수",OnClose,def,수량);
IF sdate >= 일자 and stime > 시각 and MarketPosition==1 THEN {
IF CurrentContracts==수량 THEN {
exitlong("L1",AtStop,단가*0.85,"",수량,1);
exitlong("P1",AtLimit,단가*1.1,"",Var1,1);
}
IF CurrentContracts==수량-Var1 THEN {
exitlong("L2",AtStop,단가*1.0035,"",Var2,1);
exitlong("P2",AtLimit,단가*1.2,"",Var1,1);
}
IF CurrentContracts==수량-(2*Var1) THEN{
exitlong("L3",AtStop,단가*0.9,"",Var3,1);
}
}
따로 강제청산등은 설정하시면 안됩니다.
즐거운 하루되세요
> 검은펜 님이 쓴 글입니다.
> 제목 : 수량이 안실렸다??
> 최근 문의드려 도움받아
제가 원하는 신호가 잘 나옵니다.
이미 수동매수한 상태에서 매도용도로만 시스템으로 할려고용.
그런데 시험/경보말고 자동매매 체크해도
실제로 매수가 안나갑니다. 신호만 나옵니다.
그 원인은 시스템이 보유수량의 인식없어 실제주문이 안나갑니다??
신호안내팝업이 자동주문까지 나갈 수 있도록 안내바랍니다@@@@@^^^^^^@@@@@@@
INPUT: 단가(10650),수량(1042),일자(20090521),시각(134500);
IF CodeCategory==1 THEN BEGIN
IF BasePrice>=50000 THEN Var1=int((수량/2)/2);
ELSE Var1=int(int((수량/2)/2)/10)*10; END
IF CodeCategory==2 THEN Var1=int((수량/2)/2);
Var2=수량-Var1;
Var3=수량-(2*Var1);
IF sdate>=일자 AND stime>=시각 AND L<=단가 THEN
BUY("매수",OnClose,def,수량);
IF MarketPosition==1 THEN BEGIN
IF CurrentContracts==수량 THEN BEGIN
exitlong("L1",AtStop,단가*0.85,"",수량,1);
exitlong("P1",AtLimit,단가*1.1,"",Var1,1); END
IF CurrentContracts==수량-Var1 THEN BEGIN
exitlong("L2",AtStop,단가*1.0035,"",Var2,1);
exitlong("P2",AtLimit,단가*1.2,"",Var1,1); END
IF CurrentContracts==수량-(2*Var1) THEN
exitlong("L3",AtStop,단가*0.9,"",Var3,1); END
다음글
이전글