예스스탁
예스스탁 답변
2023-09-11 18:12:07
안녕하세요
예스스탁입니다.
b2도 진입횟수 조건이 entry< 3로만 되어 있습니다.
entry >= 1 and entry< 3로 지정해 주시면 됩니다.
input : left(5),right(5),ln(3),dn(12),ts(30),loss(20),scl(3),LAT(5);
var : ii(0),entry(0),T1(0);
if Bdate != Bdate[1] Then{
T1 = TotalTrades;
}
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = TotalTrades-T1+1;//당일 진입 3회까지만
if bdate != Bdate[1] Then
{
var1 = 0;
ii = 0;
}
ii = ii +1;
if ii >= 11 and Swinglow(1,L,5,5,11) != -1 Then
{
var2 =L[5];
}
if date != date[1] then{
var3 = 0;// 당일 첫번째 진입
}
if MarketPosition==0 and NextBarSdate == sDate AND Var3<1 and var2>0 and entry< 3 Then//var3<1 당일 첫번째진입은
{
Buy("b1",AtLimit,var2+PriceScale*scl);//첫번째 진입은 b1
var3=1;
}
if MarketPosition==0 and BarsSinceExit(1)>5 and NextBarSdate == sDate and var2>0 and entry >= 1 and entry< 3 Then// 당일 두 번재 진입부터는 직전 청산후 5봉 경과후 진입
{
Buy("b2",AtLimit,var2+PriceScale*scl);//2번째봉부터는 청산후 5본 경과
}
SetStopLoss(LOSS,PercentStop);
SetStopTrailing(dn,ts,PercentStop,1);
SetStopEndofday(151500);
즐거운 하루되세요
> 피카2 님이 쓴 글입니다.
> 제목 : 수식오류수정 부탁드립니다
> 당일 두번째 진입(b2)부터는 직전 청산후 5봉 경과후 진입식 입니다.그런데 어떤날은
첫번째 진입인 데도 두번째이후 진입명인 b2가 표시가 됩니다. 어떤 표현이 잘못된건지
수정 부탁드립니다.
input : left(5),right(5),ln(3),dn(12),ts(30),loss(20),scl(3),LAT(5);
var : ii(0),entry(0),T1(0);
if Bdate != Bdate[1] Then{
T1 = TotalTrades;
}
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = TotalTrades-T1+1;//당일 진입 3회까지만
if bdate != Bdate[1] Then
{
var1 = 0;
ii = 0;
}
ii = ii +1;
if ii >= 11 and Swinglow(1,L,5,5,11) != -1 Then
{
var2 =L[5];
}
if date != date[1] then{
var3 = 0;// 당일 첫번째 진입
}
if MarketPosition==0 and NextBarSdate == sDate AND Var3<1 and var2>0 and entry< 3 Then//var3<1 당일 첫번째진입은
{
Buy("b1",AtLimit,var2+PriceScale*scl);//첫번째 진입은 b1
var3=1;
}
if MarketPosition==0 and BarsSinceExit(1)>5 and NextBarSdate == sDate and var2>0 and entry< 3 Then// 당일 두 번재 진입부터는 직전 청산후 5봉 경과후 진입
{
Buy("b2",AtLimit,var2+PriceScale*scl);//2번째봉부터는 청산후 5본 경과
}
SetStopLoss(LOSS,PercentStop);
SetStopTrailing(dn,ts,PercentStop,1);
SetStopEndofday(151500);