커뮤니티
수식 문의 드립니다
2019-07-30 09:01:48
220
글번호 130771
저번에 답변 주셨던 두개식으로 적용해봤는데 신호가 지멋대로 나오고 있습니다.
진입청산수식을 스위칭으로 하고있는데 어떨때는 신호가 나오고 어떨때는 신호가 안나오고 그냥 지나쳐버렸는데. st 50 상향돌파->매수, 하향돌파->매도인데 매수되고 하양돌파했는데 스위칭안되고 계속 지나치다가 그다음날 신호에서 스위칭되거나 합니다. 그리고 밑에 두번째 수식은 적용해도 손절청산되고 또 같은 방향으로 재진입되더라고요 멈췄다 다음스위칭신로호 재진입도 안되고 그냥 청산즉시 재진입되는데 보시고 답변좀부탁드릴께요
var : entry(0),Xcond(false);
if bdate != bdate[1] Then
{
entry = 0;
Xcond = false;
}
if MarketPosition(0) != 0 and MarketPosition(0) != MarketPosition(0)[1] Then
entry = entry+1;
if TotalTrades > TotalTrades[1] and
(IsExitName("StopLoss",1) or IsExitName("StopProfitTarget",1)) Then
Xcond = true;
if entry < 10 and Xcond == false Then
{
진입수식들
}
if (sdate != sdate[1] and stime >= 230000) or
(sdate == sdate[1] and stime >= 230000 and stime[1] < 230000) Then
{
23시진입수식
}
SetStopLoss(PriceScale*7,PointStop);
SetStopProfittarget(PriceScale*7,PointStop);
input : 시작시간(202500),끝시간(50000),sto1(10),sto2(5);
var :stok(0);
stok = StochasticsK(sto1,sto2);
if (sdate != sdate[1] and stime >= 끝시간) or
(sdate == sdate[1] and stime >= 끝시간 and stime[1] < 끝시간) then
{
Condition1 = false;
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
if (sdate != sdate[1] and stime >= 시작시간) or
(sdate == sdate[1] and stime >= 시작시간 and stime[1] < 시작시간) then
{
Condition1 = true;
if stok> 50 Then
buy("b1");
if stok < 50 Then
sell("S1");
}
if Condition1 == true and Condition1[1] == true then
{
if crossup(stok,50) Then
buy("b");
if CrossDown(stok,50) Then
sell("S");
}
답변 1
예스스탁 예스스탁 답변
2019-07-30 14:46:00
안녕하세요
예스스탁입니다.
해당 수식을 스토케스틱 조건으로 차트에 적용해 보았지만
이상한 신호나 건너뛰는 신호가 발생하지 않습니다.
02-3453-1060으로 전화주시기 바랍니다.
즐거운 하루되세요
> toal 님이 쓴 글입니다.
> 제목 : 수식 문의 드립니다
> 저번에 답변 주셨던 두개식으로 적용해봤는데 신호가 지멋대로 나오고 있습니다.
진입청산수식을 스위칭으로 하고있는데 어떨때는 신호가 나오고 어떨때는 신호가 안나오고 그냥 지나쳐버렸는데. st 50 상향돌파->매수, 하향돌파->매도인데 매수되고 하양돌파했는데 스위칭안되고 계속 지나치다가 그다음날 신호에서 스위칭되거나 합니다. 그리고 밑에 두번째 수식은 적용해도 손절청산되고 또 같은 방향으로 재진입되더라고요 멈췄다 다음스위칭신로호 재진입도 안되고 그냥 청산즉시 재진입되는데 보시고 답변좀부탁드릴께요
var : entry(0),Xcond(false);
if bdate != bdate[1] Then
{
entry = 0;
Xcond = false;
}
if MarketPosition(0) != 0 and MarketPosition(0) != MarketPosition(0)[1] Then
entry = entry+1;
if TotalTrades > TotalTrades[1] and
(IsExitName("StopLoss",1) or IsExitName("StopProfitTarget",1)) Then
Xcond = true;
if entry < 10 and Xcond == false Then
{
진입수식들
}
if (sdate != sdate[1] and stime >= 230000) or
(sdate == sdate[1] and stime >= 230000 and stime[1] < 230000) Then
{
23시진입수식
}
SetStopLoss(PriceScale*7,PointStop);
SetStopProfittarget(PriceScale*7,PointStop);
input : 시작시간(202500),끝시간(50000),sto1(10),sto2(5);
var :stok(0);
stok = StochasticsK(sto1,sto2);
if (sdate != sdate[1] and stime >= 끝시간) or
(sdate == sdate[1] and stime >= 끝시간 and stime[1] < 끝시간) then
{
Condition1 = false;
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
if (sdate != sdate[1] and stime >= 시작시간) or
(sdate == sdate[1] and stime >= 시작시간 and stime[1] < 시작시간) then
{
Condition1 = true;
if stok> 50 Then
buy("b1");
if stok < 50 Then
sell("S1");
}
if Condition1 == true and Condition1[1] == true then
{
if crossup(stok,50) Then
buy("b");
if CrossDown(stok,50) Then
sell("S");
}