커뮤니티
수식 수정 부탁드립니다.
2017-05-12 10:23:19
112
글번호 109494
안녕하세요.
아래 수식에 진입방식이 n 번의 손절이 된 후 실제로 진입되도록 가능할까요?
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식 변경 요청드립니다.
>
안녕하세요
예스스탁입니다.
input : 시작시간(180000), 끝시간(055000), 손절틱수 (10);
Input : TurnLen1(5), StdLen1(26);
Input : TurnLen2(9), StdLen2(26);
Var : 기준선1(0), 전환선1(0);
Var : 기준선2(0), 전환선2(0);
Var : HH(0), LL(0), vol(0),Tcond(false),T(0);
전환선1 = (Highest(High, TurnLen1) + Lowest(Low, TurnLen1)) / 2;
기준선1 = (Highest(High, StdLen1) + Lowest(Low, StdLen1)) / 2;
전환선2 = (Highest(High, TurnLen2) + Lowest(Low, TurnLen2)) / 2;
기준선2 = (Highest(High, StdLen2) + Lowest(Low, StdLen2)) / 2;
Condition1 = 전환선1 > C and C > 기준선2;
Condition2 = 전환선1 < C and C < 기준선2;
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간 ) Then{
T = 0;
Tcond = true;
}
if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간 ) Then{
Tcond = false;
if MarketPosition == 1 Then
ExitLong();
if MarketPosition == -1 Then
ExitShort();
}
if Tcond == true then{
if T <= 0 and Condition1 == true and Condition1[1] == false Then{
T = 1;
if MarketPosition == 0 Then{
if PositionProfit(1) >= 0 Then
vol = 1;
Else
vol = Vol+2;
}
Else{
if PositionProfit(0) >= 0 Then
vol = 1;
Else
vol = Vol*2;
}
buy("b",OnClose,def,vol);
}
if T >= 0 and Condition2 == true and Condition2[1] == false Then{
T = -1;
if MarketPosition == 0 Then{
if PositionProfit(1) >= 0 Then
vol = 1;
Else
vol = Vol+2;
}
Else{
if PositionProfit(0) >= 0 Then
vol = 1;
Else
vol = Vol*2;
}
sell("s",OnClose,def,vol);
}
}
if MarketPosition == 1 Then{
LL = Floor((highest(H,BarsSinceEntry) - EntryPrice)/(PriceScale*손절틱수 ));
ExitLong("bx",AtStop,(EntryPrice-(PriceScale*손절틱수 ))+(PriceScale*손절틱수 )*LL);
}
if MarketPosition == -1 Then{
HH = Floor((EntryPrice-Lowest(L,BarsSinceEntry))/(PriceScale*손절틱수 ));
ExitShort("sx",AtStop,(EntryPrice+(PriceScale*손절틱수))-(PriceScale*손절틱수 )*HH);
}
SetStopLoss(PriceScale*손절틱수,PointStop);
답변 1
예스스탁 예스스탁 답변
2017-05-12 17:45:26
안녕하세요
예스스탁입니다.
실제신호는 발생하는데 선별적으로 주문이 가능하게는 가능하지 않습니다.
문의하신 내용은 가상으로 신호를 체크하게 식을 작성해야 하는데
해당 부분은 작성해 보는데 시간이 오래걸려 저희가
수식을 작성해 드리기는 어렵습니다.
즐거운 하루되세요
> 고박사122 님이 쓴 글입니다.
> 제목 : 수식 수정 부탁드립니다.
> 안녕하세요.
아래 수식에 진입방식이 n 번의 손절이 된 후 실제로 진입되도록 가능할까요?
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식 변경 요청드립니다.
>
안녕하세요
예스스탁입니다.
input : 시작시간(180000), 끝시간(055000), 손절틱수 (10);
Input : TurnLen1(5), StdLen1(26);
Input : TurnLen2(9), StdLen2(26);
Var : 기준선1(0), 전환선1(0);
Var : 기준선2(0), 전환선2(0);
Var : HH(0), LL(0), vol(0),Tcond(false),T(0);
전환선1 = (Highest(High, TurnLen1) + Lowest(Low, TurnLen1)) / 2;
기준선1 = (Highest(High, StdLen1) + Lowest(Low, StdLen1)) / 2;
전환선2 = (Highest(High, TurnLen2) + Lowest(Low, TurnLen2)) / 2;
기준선2 = (Highest(High, StdLen2) + Lowest(Low, StdLen2)) / 2;
Condition1 = 전환선1 > C and C > 기준선2;
Condition2 = 전환선1 < C and C < 기준선2;
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간 ) Then{
T = 0;
Tcond = true;
}
if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간 ) Then{
Tcond = false;
if MarketPosition == 1 Then
ExitLong();
if MarketPosition == -1 Then
ExitShort();
}
if Tcond == true then{
if T <= 0 and Condition1 == true and Condition1[1] == false Then{
T = 1;
if MarketPosition == 0 Then{
if PositionProfit(1) >= 0 Then
vol = 1;
Else
vol = Vol+2;
}
Else{
if PositionProfit(0) >= 0 Then
vol = 1;
Else
vol = Vol*2;
}
buy("b",OnClose,def,vol);
}
if T >= 0 and Condition2 == true and Condition2[1] == false Then{
T = -1;
if MarketPosition == 0 Then{
if PositionProfit(1) >= 0 Then
vol = 1;
Else
vol = Vol+2;
}
Else{
if PositionProfit(0) >= 0 Then
vol = 1;
Else
vol = Vol*2;
}
sell("s",OnClose,def,vol);
}
}
if MarketPosition == 1 Then{
LL = Floor((highest(H,BarsSinceEntry) - EntryPrice)/(PriceScale*손절틱수 ));
ExitLong("bx",AtStop,(EntryPrice-(PriceScale*손절틱수 ))+(PriceScale*손절틱수 )*LL);
}
if MarketPosition == -1 Then{
HH = Floor((EntryPrice-Lowest(L,BarsSinceEntry))/(PriceScale*손절틱수 ));
ExitShort("sx",AtStop,(EntryPrice+(PriceScale*손절틱수))-(PriceScale*손절틱수 )*HH);
}
SetStopLoss(PriceScale*손절틱수,PointStop);
다음글
이전글