커뮤니티

질문

프로필 이미지
이주엽
2018-01-17 09:47:10
145
글번호 115837
답변완료
수정해 주셔서 신호는 잘 나오는 데 진입설정에서 피라미드중복진입을 설정했는 데도 하루 한번받에 거래가 않되네요.수정 부탁드립니다. 감사합니다. input : BarsEntryInterval(20), pMaxContracts(4),pTimeInterval(11); Var : vA_value(0,data2),TT(0), vB_value(0,data2),vStartMin(0,data2); var : PreTT(0,data2),cond99(false,data1); If data2(bdate <> bdate[1]) Then { vA_value = data2(H); vB_value = data2(L); Cond99 = False; vStartMin = data2(TimeToMinutes(stime)); PreTT = TotalTrades[1]; } If Cond99 == False Then { if vA_value < data2(H) Then vA_value = data2(H); if vB_value > data2(L) Then vB_value = data2(L); } If data2((TimeToMinutes(stime) - vStartMin) == pTimeInterval And Cond99 == False) Then { Cond99 = True; } if Cond99 Then { #If data2(CrossUp(C, vA_value)) Then ExitShort("BX"); If data2(CrossDown(C, vB_value)) Then ExitLong("SX"); If data2(time <= 115900) And TT - PreTT <= 2 Then { If data2(CrossUp(C, vA_value)) Then Buy("B"); If data2(CrossDown(C, vB_value)) Then ExitLong("S"); } if MarketPosition == 1 And data2(C > vA_value) And CurrentContracts < pMaxContracts Then{ if BarsSinceEntry == ( 1 * BarsEntryInterval) Then Buy("reBuy1"); if BarsSinceEntry == ( 2 * BarsEntryInterval) Then Buy("reBuy2"); if BarsSinceEntry == ( 3 * BarsEntryInterval) Then Buy("reBuy3"); } /* if MarketPosition == -1 And data2(C < vB_value) And CurrentContracts < pMaxContracts Then{ if BarsSinceEntry == ( 1 * BarsEntryInterval) Then Sell("reSell1"); if BarsSinceEntry == ( 2 * BarsEntryInterval) Then Sell("reSell2"); if BarsSinceEntry == ( 3 * BarsEntryInterval) Then Sell("reSell3"); }*/ } SetStopEndofday(150000);
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2018-01-17 13:17:26

안녕하세요 예스스탁입니다. 수식내용상 pMaxContracts 이상으로 수량이 진입되지 않습니다. 내용상 첫진입이후 3번 추가매수가 가능하므로 수량이 아닌 최대진입을 4회까지 하는 식으로 변경해 드립니다. input : BarsEntryInterval(20), pMaxEntry(4),pTimeInterval(11); Var : vA_value(0,data2),TT(0), vB_value(0,data2),vStartMin(0,data2); var : PreTT(0,data2),cond99(false,data1); If data2(bdate <> bdate[1]) Then { vA_value = data2(H); vB_value = data2(L); Cond99 = False; vStartMin = data2(TimeToMinutes(stime)); PreTT = TotalTrades[1]; } If Cond99 == False Then { if vA_value < data2(H) Then vA_value = data2(H); if vB_value > data2(L) Then vB_value = data2(L); } If data2((TimeToMinutes(stime) - vStartMin) == pTimeInterval And Cond99 == False) Then { Cond99 = True; } if Cond99 Then { #If data2(CrossUp(C, vA_value)) Then ExitShort("BX"); If data2(CrossDown(C, vB_value)) Then ExitLong("SX"); If data2(time <= 115900) And TT - PreTT <= 2 Then { If MarketPosition <= 0 and data2(CrossUp(C, vA_value)) Then Buy("B"); If data2(CrossDown(C, vB_value)) Then ExitLong("S"); } if MarketPosition == 1 And data2(C > vA_value) And MaxEntries < pMaxEntry Then{ if BarsSinceEntry == ( 1 * BarsEntryInterval) Then Buy("reBuy1"); if BarsSinceEntry == ( 2 * BarsEntryInterval) Then Buy("reBuy2"); if BarsSinceEntry == ( 3 * BarsEntryInterval) Then Buy("reBuy3"); } /* if MarketPosition == -1 And data2(C < vB_value) And CurrentContracts < pMaxEntry Then{ if BarsSinceEntry == ( 1 * BarsEntryInterval) Then Sell("reSell1"); if BarsSinceEntry == ( 2 * BarsEntryInterval) Then Sell("reSell2"); if BarsSinceEntry == ( 3 * BarsEntryInterval) Then Sell("reSell3"); }*/ } SetStopEndofday(150000); 즐거운 하루되세요 > 이주엽 님이 쓴 글입니다. > 제목 : 질문 > 수정해 주셔서 신호는 잘 나오는 데 진입설정에서 피라미드중복진입을 설정했는 데도 하루 한번받에 거래가 않되네요.수정 부탁드립니다. 감사합니다. input : BarsEntryInterval(20), pMaxContracts(4),pTimeInterval(11); Var : vA_value(0,data2),TT(0), vB_value(0,data2),vStartMin(0,data2); var : PreTT(0,data2),cond99(false,data1); If data2(bdate <> bdate[1]) Then { vA_value = data2(H); vB_value = data2(L); Cond99 = False; vStartMin = data2(TimeToMinutes(stime)); PreTT = TotalTrades[1]; } If Cond99 == False Then { if vA_value < data2(H) Then vA_value = data2(H); if vB_value > data2(L) Then vB_value = data2(L); } If data2((TimeToMinutes(stime) - vStartMin) == pTimeInterval And Cond99 == False) Then { Cond99 = True; } if Cond99 Then { #If data2(CrossUp(C, vA_value)) Then ExitShort("BX"); If data2(CrossDown(C, vB_value)) Then ExitLong("SX"); If data2(time <= 115900) And TT - PreTT <= 2 Then { If data2(CrossUp(C, vA_value)) Then Buy("B"); If data2(CrossDown(C, vB_value)) Then ExitLong("S"); } if MarketPosition == 1 And data2(C > vA_value) And CurrentContracts < pMaxContracts Then{ if BarsSinceEntry == ( 1 * BarsEntryInterval) Then Buy("reBuy1"); if BarsSinceEntry == ( 2 * BarsEntryInterval) Then Buy("reBuy2"); if BarsSinceEntry == ( 3 * BarsEntryInterval) Then Buy("reBuy3"); } /* if MarketPosition == -1 And data2(C < vB_value) And CurrentContracts < pMaxContracts Then{ if BarsSinceEntry == ( 1 * BarsEntryInterval) Then Sell("reSell1"); if BarsSinceEntry == ( 2 * BarsEntryInterval) Then Sell("reSell2"); if BarsSinceEntry == ( 3 * BarsEntryInterval) Then Sell("reSell3"); }*/ } SetStopEndofday(150000);
프로필 이미지

이주엽

2018-01-17 23:04:26

이주엽 님에 의해 삭제된 답변입니다.