커뮤니티
재문의
2013-11-22 02:08:04
233
글번호 69727
안녕하세요 답변에감사드립니다 오늘수정해주신 식으로 적용해보니 앞전식과 똑같이 5분씩빨리 신호가나옵니다 설정창에서 시간시작에 체크하고 청산은 15:00에됩니다 담당자님께서 시뮬차트에한번 돌려보시면 좋겠읍니다 제가보기엔 간단한문제같은데 까다로운문제인가요 C.T 를 사용하다가 Y.T 로 옮길려고 하는데 처음부터 난관에 부딫혀서 순탄치가않네요 그리고 예스트레이더 시뮬차트에 돌려보면 아무런 신호가 않나와서 우리트레이더로 시뮬했읍니다 혹시 우리트레이더에 돌려서 이런결과가 나오는지요 제가알기로는 동일한시스템으로 알고있는데요 근데 왜 에스트레이더는 아무런 신호가 않뜰까요 제가잘못가동한 부분이있는지 알려주십시요 제가 문의드린식에서 이문제를 꼭 해결하고 넘어가야되는 사정이라서요 바쁘시더라도 신경좀써주십시요 죄송합니다 감사합니다
( 11월 20일 )
Y.T
1신호 -355.000 ( - 0.71pt )
2신호 -280.000 ( - 0.56 pt )
3신호 +220.000 ( + 0.44 pt )
총손익 , -415.000 원
( 11월 총손익 ) , -2.830.000원
*********************************************************
C.T
1신호 -140.000 ( - 0.28 pt )
2신호 -120.000 ( - 0.24 pt )
3신호 +170.000 ( + 0.34 pt )
총손익 , -110.000 원
( 11월 총손익 ) , -255.000원
수수료 0.0015 %
슬리피지 0.05 pt
********************************************************************************
안녕하세요
예스스탁입니다.
수식에서 시간지정에서 차이가 있는것 같습니다.
예스랭귀지에서 첫봉은 90000이라는 시간을 가지므로
stime > 090000은 두번째 봉부터를 의미하는데
atstop이 if조건만족하고 다음봉에 신호가 발생하므로 세번째 봉부터 신호가 발생할수 있습니다.
해당 부분 두번째 봉에서 신호가 발생할수 있게 변경했습니다.
If stime < 150000 Then{
if stime >= 090000 then{
If MarketPosition==0 then{
buy("매수",Atstop,DayOpen+0.8);
sell("매도",Atstop,DayOpen-0.8);
}
if MarketPosition == -1 Then
buy("역매수",Atstop,lowest(low,BarsSinceEntry+1)+0.9);
if MarketPosition == 1 Then
sell("역매도",Atstop,highest(high,BarsSinceEntry+1)-0.9);
}
}
위식으로 차트에 적용하면
시초가에서 0.8 움직이면 "매수"나 "매도"가 진입하고
역매수와 역매도도 진입이후의 최고가나 최저가를 기준으로 0.9 움직일때 정확히 리버션진입합니다.
당일청산의 경우 실전에서는 해당 시간이 되면 즉시 주문이 집행됩니다.
리포트에는 강제청산으로 지정된 시간이 포함된 봉의 시간을 표시하게 되고
당일청산이 봉미완성시에 나오므로 그때의 가격을 알수 없어
리포트에는 해당봉의 종가로 표시됩니다.
예스트레이더의 수식은 모두 봉을 시작시간으로 시간을 사용합니다.
예스트레이더 상단 관리메뉴의 종합환경설정창으세
봉의 X축표시를 시작시간기준으로 하시고 보시기 바랍니다.
즐거운 하루되세요
> 민선생1 님이 쓴 글입니다.
> 제목 : 재문의
> 답변감사합니다 수정해주신 식으로 적용해보니 진입시간과가격은 동일한데요 결과가다릅니다 그리고 당일청산에서 2개다 15:00에 적용했는데 C.T 는 15:00에 청산인데 Y.T는 15:05분에 청산이되네요 그래서 02:55분으로 바꿔보니 15:00에 청산이됩니다 수수료 와 슬리피지는 2개다 동일하게했는데 왜다른결과가 나오나요 ? 다시좀 살펴주십시요 감사합니다
************************************************************
안녕하세요
예스스탁입니다.
역매수와 역매도 수식의 매개변수 지정이 잘못되어 있었습니다.
아래식으로 다시 적용하시면 됩니다.
If stime < 150000 Then{
if stime > 090000 then{
If MarketPosition==0 then{
buy("매수",Atstop,DayOpen+0.8);
sell("매도",Atstop,DayOpen-0.8);
}
if MarketPosition == -1 Then
buy("역매수",Atstop,lowest(low,BarsSinceEntry+1)+0.9);
if MarketPosition == 1 Then
sell("역매도",Atstop,highest(high,BarsSinceEntry+1)-0.9);
}
}
******************************************************************
If ttime<1500 Then
If ttime>0900 Then
If position=0 Then
Call buy("매수",Atstop,Def,opend+0.8)
Call sell("매도",Atstop,Def,opend-0.8)
Else
Call buy("역매수",Atstop,Def,llv(1,low,barnumsinceentry+1)+0.9)
Call sell("역매도",Atstop,Def,hhv(1,high,barnumsinceentry+1)-0.9)
End If
End if
End if
답변 1
예스스탁 예스스탁 답변
2013-11-22 16:30:13
> 민선생1 님이 쓴 글입니다.
> 제목 : 재문의
> 안녕하세요 답변에감사드립니다 오늘수정해주신 식으로 적용해보니 앞전식과 똑같이 5분씩빨리 신호가나옵니다 설정창에서 시간시작에 체크하고 청산은 15:00에됩니다 담당자님께서 시뮬차트에한번 돌려보시면 좋겠읍니다 제가보기엔 간단한문제같은데 까다로운문제인가요 C.T 를 사용하다가 Y.T 로 옮길려고 하는데 처음부터 난관에 부딫혀서 순탄치가않네요 그리고 예스트레이더 시뮬차트에 돌려보면 아무런 신호가 않나와서 우리트레이더로 시뮬했읍니다 혹시 우리트레이더에 돌려서 이런결과가 나오는지요 제가알기로는 동일한시스템으로 알고있는데요 근데 왜 에스트레이더는 아무런 신호가 않뜰까요 제가잘못가동한 부분이있는지 알려주십시요 제가 문의드린식에서 이문제를 꼭 해결하고 넘어가야되는 사정이라서요 바쁘시더라도 신경좀써주십시요 죄송합니다 감사합니다
( 11월 20일 )
Y.T
1신호 -355.000 ( - 0.71pt )
2신호 -280.000 ( - 0.56 pt )
3신호 +220.000 ( + 0.44 pt )
총손익 , -415.000 원
( 11월 총손익 ) , -2.830.000원
*********************************************************
C.T
1신호 -140.000 ( - 0.28 pt )
2신호 -120.000 ( - 0.24 pt )
3신호 +170.000 ( + 0.34 pt )
총손익 , -110.000 원
( 11월 총손익 ) , -255.000원
수수료 0.0015 %
슬리피지 0.05 pt
********************************************************************************
안녕하세요
예스스탁입니다.
수식에서 시간지정에서 차이가 있는것 같습니다.
예스랭귀지에서 첫봉은 90000이라는 시간을 가지므로
stime > 090000은 두번째 봉부터를 의미하는데
atstop이 if조건만족하고 다음봉에 신호가 발생하므로 세번째 봉부터 신호가 발생할수 있습니다.
해당 부분 두번째 봉에서 신호가 발생할수 있게 변경했습니다.
If stime < 150000 Then{
if stime >= 090000 then{
If MarketPosition==0 then{
buy("매수",Atstop,DayOpen+0.8);
sell("매도",Atstop,DayOpen-0.8);
}
if MarketPosition == -1 Then
buy("역매수",Atstop,lowest(low,BarsSinceEntry+1)+0.9);
if MarketPosition == 1 Then
sell("역매도",Atstop,highest(high,BarsSinceEntry+1)-0.9);
}
}
위식으로 차트에 적용하면
시초가에서 0.8 움직이면 "매수"나 "매도"가 진입하고
역매수와 역매도도 진입이후의 최고가나 최저가를 기준으로 0.9 움직일때 정확히 리버션진입합니다.
당일청산의 경우 실전에서는 해당 시간이 되면 즉시 주문이 집행됩니다.
리포트에는 강제청산으로 지정된 시간이 포함된 봉의 시간을 표시하게 되고
당일청산이 봉미완성시에 나오므로 그때의 가격을 알수 없어
리포트에는 해당봉의 종가로 표시됩니다.
예스트레이더의 수식은 모두 봉을 시작시간으로 시간을 사용합니다.
예스트레이더 상단 관리메뉴의 종합환경설정창으세
봉의 X축표시를 시작시간기준으로 하시고 보시기 바랍니다.
즐거운 하루되세요
> 민선생1 님이 쓴 글입니다.
> 제목 : 재문의
> 답변감사합니다 수정해주신 식으로 적용해보니 진입시간과가격은 동일한데요 결과가다릅니다 그리고 당일청산에서 2개다 15:00에 적용했는데 C.T 는 15:00에 청산인데 Y.T는 15:05분에 청산이되네요 그래서 02:55분으로 바꿔보니 15:00에 청산이됩니다 수수료 와 슬리피지는 2개다 동일하게했는데 왜다른결과가 나오나요 ? 다시좀 살펴주십시요 감사합니다
************************************************************
안녕하세요
예스스탁입니다.
역매수와 역매도 수식의 매개변수 지정이 잘못되어 있었습니다.
아래식으로 다시 적용하시면 됩니다.
If stime < 150000 Then{
if stime > 090000 then{
If MarketPosition==0 then{
buy("매수",Atstop,DayOpen+0.8);
sell("매도",Atstop,DayOpen-0.8);
}
if MarketPosition == -1 Then
buy("역매수",Atstop,lowest(low,BarsSinceEntry+1)+0.9);
if MarketPosition == 1 Then
sell("역매도",Atstop,highest(high,BarsSinceEntry+1)-0.9);
}
}
******************************************************************
If ttime<1500 Then
If ttime>0900 Then
If position=0 Then
Call buy("매수",Atstop,Def,opend+0.8)
Call sell("매도",Atstop,Def,opend-0.8)
Else
Call buy("역매수",Atstop,Def,llv(1,low,barnumsinceentry+1)+0.9)
Call sell("역매도",Atstop,Def,hhv(1,high,barnumsinceentry+1)-0.9)
End If
End if
End if