커뮤니티
당일의 고점 돌파식
2005-08-17 16:00:34
1850
글번호 8026
안녕하십니까 늘 수고하십니다.
다음과 같이 당일의 고점을 돌파하는 시스템 식입니다.
1. onclse주문의 형태로 당일 고점을 돌파할때는 문제 없이 주문이 나갑니다.
하지만 stop주문의 형태로 고쳐서 주문을 내보면 많은 구간에서 당일의고점을
돌파하지만 주문이 나가지 않는 것을 확인할 수 있습니다. 현재시그널에서 stop주문
의 형태로 고쳤을때 주문이 되지 않는 부분을 납득이가게 설명좀 부탁드립니다.
(제가 원하는 부분의 코딩은 "당일의 고점돌파시 매수하되, 전봉의 DayHigh값을 돌]
파하는 즉시 매수하라" 라는 코딩입니다. Onclose주문의 형태보다는 중요한 부분의
고점을 돌파햇을때 바로 주문이 나가는 코딩이 필요)
2. stop주문에서 지정한 값이상에서 확실히 주문을 낼필요가 있을때 사용할 수 잇는
팁을 알려주셨으면 감사하겠습니다.
//***********************OnClose주문******************************************
var:Bcont(0),Scont(0);
var1=dayhigh();
var2=daylow();
if date!=date[1] then begin
Bcont=0;
Scont=0;
end;
if Stime<150000 and Bcont<1 and dayindex()> 3 and crossUP(c,var1[1]) then begin
Buy("B",onclose,def) ;
// Buy("B",atstop,var1[1]);
Bcont=Bcont+1;
end;
if Stime<150000 and Scont<1 /*and var4 */and dayindex()>3 and crossdown(c,var2[1]) then begin
sell("s",onclose,def);
//Sell("S",atstop,var2[1]);
Scont=Scont+1;
end;
setstopendofday(1504);
//*****************************************************************************
//**************************ATstop주문************************
input:s1(3),per(0.05);
var:Bcont(0),Scont(0);
var1=dayhigh();
var2=daylow();
if date!=date[1] then begin
Bcont=0;
Scont=0;
end;
if Stime<150000 and Bcont<1 and dayindex()> 3 /* and crossUP(c,var1[1]) */then begin
// Buy("B",onclose,def) ;
Buy("B",atstop,var1[1]);
Bcont=Bcont+1;
print("DayhighLow.xls","var1 %.2f ",var1);
end;
if Stime<150000 and Scont<1 and dayindex()>3 /*and crossdown(c,var2[1])*/ then begin
// sell("s",onclose,def);
Sell("S",atstop,var2[1]);
Scont=Scont+1;
end;
setstopendofday(1504);
답변 3
선물투자
2005-08-17 18:11:00
////////////////////////////
Bcont=Bcont+1;
Scont=Scont+1;
///////////////////////////
위식을 삭제하면 될듯합니다.
왜냐하면 1~4번째바까지의 고가또는 저가를 6번째바에서 돌파하지 않으면
일곱번째바부터는 신호나 나오지 않는 조건(Bcont<1)이 있기때문에 그렇습니다.
아마도 식 Bcont<1 는 하루에 한번거래하기위한 것 같긴하나 stop주문에서는
적절하지 않고 close주문에만 쓰는것이 맞지 않나 싶습니다.
/////////////////////////////////////////////////////////////////////////////
> 히말라야 님이 쓴 글입니다.
> 제목 : 당일의 고점 돌파식
> 안녕하십니까 늘 수고하십니다.
다음과 같이 당일의 고점을 돌파하는 시스템 식입니다.
1. onclse주문의 형태로 당일 고점을 돌파할때는 문제 없이 주문이 나갑니다.
하지만 stop주문의 형태로 고쳐서 주문을 내보면 많은 구간에서 당일의고점을
돌파하지만 주문이 나가지 않는 것을 확인할 수 있습니다. 현재시그널에서 stop주문
의 형태로 고쳤을때 주문이 되지 않는 부분을 납득이가게 설명좀 부탁드립니다.
(제가 원하는 부분의 코딩은 "당일의 고점돌파시 매수하되, 전봉의 DayHigh값을 돌]
파하는 즉시 매수하라" 라는 코딩입니다. Onclose주문의 형태보다는 중요한 부분의
고점을 돌파햇을때 바로 주문이 나가는 코딩이 필요)
2. stop주문에서 지정한 값이상에서 확실히 주문을 낼필요가 있을때 사용할 수 잇는
팁을 알려주셨으면 감사하겠습니다.
//***********************OnClose주문******************************************
var:Bcont(0),Scont(0);
var1=dayhigh();
var2=daylow();
if date!=date[1] then begin
Bcont=0;
Scont=0;
end;
if Stime<150000 and Bcont<1 and dayindex()> 3 and crossUP(c,var1[1]) then begin
Buy("B",onclose,def) ;
// Buy("B",atstop,var1[1]);
Bcont=Bcont+1;
end;
if Stime<150000 and Scont<1 /*and var4 */and dayindex()>3 and crossdown(c,var2[1]) then begin
sell("s",onclose,def);
//Sell("S",atstop,var2[1]);
Scont=Scont+1;
end;
setstopendofday(1504);
//*****************************************************************************
//**************************ATstop주문************************
input:s1(3),per(0.05);
var:Bcont(0),Scont(0);
var1=dayhigh();
var2=daylow();
if date!=date[1] then begin
Bcont=0;
Scont=0;
end;
if Stime<150000 and Bcont<1 and dayindex()> 3 /* and crossUP(c,var1[1]) */then begin
// Buy("B",onclose,def) ;
Buy("B",atstop,var1[1]);
Bcont=Bcont+1;
print("DayhighLow.xls","var1 %.2f ",var1);
end;
if Stime<150000 and Scont<1 and dayindex()>3 /*and crossdown(c,var2[1])*/ then begin
// sell("s",onclose,def);
Sell("S",atstop,var2[1]);
Scont=Scont+1;
end;
setstopendofday(1504);
예스스탁 예스스탁 답변
2005-08-18 08:46:31
안녕하세요
예스스탁입니다.
수식안에 당일의 횟수를 제어하는 부분이 있으므로
신호가 나오지 않는경우 가 있습니다.
if 조건만 만족하면 atstop가격조건과는 상관없이 cont에 1이 저장 되므로 실제로 신호가 나오지 않는 부분이 생깁니다.
수식을 수정해서 올려드립니다.
포지션상태로 당일 각각 1번씩 진입합니다.
input:s1(3),per(0.05);
var:Bcont(0),Scont(0),MP(0);
var1=dayhigh();
var2=daylow();
Mp = marketposition();
if date!=date[1] then begin
Bcont=0;
Scont=0;
end;
if Stime<150000 and Bcont < 1 and dayindex()> 3 /* and crossUP(c,var1[1]) */then begin
Buy("B",atstop,var1[1]);
end;
if Stime<150000 and Scont < 1 and dayindex()>3 /*and crossdown(c,var2[1])*/ then begin
Sell("S",atstop,var2[1]);
end;
if mp == 1 and mp[1] != 1 then
Bcont = 1;
if mp == -1 and mp[1] != -1 then
Scont = 1;
setstopendofday(1504);
즐거운 하루되세요
즐거운 하루되세요
> 히말라야 님이 쓴 글입니다.
> 제목 : 당일의 고점 돌파식
> 안녕하십니까 늘 수고하십니다.
다음과 같이 당일의 고점을 돌파하는 시스템 식입니다.
1. onclse주문의 형태로 당일 고점을 돌파할때는 문제 없이 주문이 나갑니다.
하지만 stop주문의 형태로 고쳐서 주문을 내보면 많은 구간에서 당일의고점을
돌파하지만 주문이 나가지 않는 것을 확인할 수 있습니다. 현재시그널에서 stop주문
의 형태로 고쳤을때 주문이 되지 않는 부분을 납득이가게 설명좀 부탁드립니다.
(제가 원하는 부분의 코딩은 "당일의 고점돌파시 매수하되, 전봉의 DayHigh값을 돌]
파하는 즉시 매수하라" 라는 코딩입니다. Onclose주문의 형태보다는 중요한 부분의
고점을 돌파햇을때 바로 주문이 나가는 코딩이 필요)
2. stop주문에서 지정한 값이상에서 확실히 주문을 낼필요가 있을때 사용할 수 잇는
팁을 알려주셨으면 감사하겠습니다.
//***********************OnClose주문******************************************
var:Bcont(0),Scont(0);
var1=dayhigh();
var2=daylow();
if date!=date[1] then begin
Bcont=0;
Scont=0;
end;
if Stime<150000 and Bcont<1 and dayindex()> 3 and crossUP(c,var1[1]) then begin
Buy("B",onclose,def) ;
// Buy("B",atstop,var1[1]);
Bcont=Bcont+1;
end;
if Stime<150000 and Scont<1 /*and var4 */and dayindex()>3 and crossdown(c,var2[1]) then begin
sell("s",onclose,def);
//Sell("S",atstop,var2[1]);
Scont=Scont+1;
end;
setstopendofday(1504);
//*****************************************************************************
//**************************ATstop주문************************
input:s1(3),per(0.05);
var:Bcont(0),Scont(0);
var1=dayhigh();
var2=daylow();
if date!=date[1] then begin
Bcont=0;
Scont=0;
end;
if Stime<150000 and Bcont<1 and dayindex()> 3 /* and crossUP(c,var1[1]) */then begin
// Buy("B",onclose,def) ;
Buy("B",atstop,var1[1]);
Bcont=Bcont+1;
print("DayhighLow.xls","var1 %.2f ",var1);
end;
if Stime<150000 and Scont<1 and dayindex()>3 /*and crossdown(c,var2[1])*/ then begin
// sell("s",onclose,def);
Sell("S",atstop,var2[1]);
Scont=Scont+1;
end;
setstopendofday(1504);
히말라야
2005-08-19 14:08:22
.
다음글