커뮤니티

수식 확인 부탁 드립니다

프로필 이미지
뎅이요
2024-09-19 11:24:06
562
글번호 183496
답변완료
StopLoss 2개 사용이 되도록 작성 부탁 드립니다. (따로 1개씩 사용시 1번은 잘 실행 되나 2번은 실행되지 않습니다.) 1. SetStopLoss(5): (5000 < C and C < 10000)즉 종가가 5,000원초과 10,000원미만 일때 진입 가격의 5% 하락시 SetStopLoss 실행. 2. SetStopLoss(10 * TickSize * CurrentContracts, pointstop); 종가가 1,000원초과 5,000원미만 일때 진입 가격의 10틱하락시 SetStopLoss 실행. input : starttime(90500),endtime(120000),XTime(123000); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; } Input : Period(12), Period1(5); Var : value(0),TickSize(0); value = StochasticsK(Period,Period1); # 매수/매도청산 If CrossUP(value, 20) Then { Buy("Buy"); } # 매도/매수청산 If CrossDown(value, 80) Then { ExitLong("Sell"); } SetStopLoss(5); SetStopLoss(10 * TickSize * CurrentContracts, pointstop); SetStopEndofday(XTime);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-09-20 11:46:32

안녕하세요 예스스탁입니다. 강제청산 함수는 동시에 2개가 설정되지 않습니다. 일반청산함수로 처리하셔야 합니다. input : starttime(90500),endtime(120000),XTime(123000); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; } Input : Period(12), Period1(5); Var : value(0),TickSize(0); value = StochasticsK(Period,Period1); # 매수/매도청산 If CrossUP(value, 20) Then { Buy("Buy"); } # 매도/매수청산 If CrossDown(value, 80) Then { ExitLong("Sell"); } if MarketPosition == 1 Then { if 5000 < C and C < 10000 Then ExitLong("bx1",AtStop,EntryPrice*0.95); if 1000 < C and C < 5000 Then ExitLong("bx2",AtStop,EntryPrice - (10 * PriceScale * CurrentContracts)); } SetStopEndofday(XTime); 즐거운 하루되세요 > 뎅이요 님이 쓴 글입니다. > 제목 : 수식 확인 부탁 드립니다 > StopLoss 2개 사용이 되도록 작성 부탁 드립니다. (따로 1개씩 사용시 1번은 잘 실행 되나 2번은 실행되지 않습니다.) 1. SetStopLoss(5): (5000 < C and C < 10000)즉 종가가 5,000원초과 10,000원미만 일때 진입 가격의 5% 하락시 SetStopLoss 실행. 2. SetStopLoss(10 * TickSize * CurrentContracts, pointstop); 종가가 1,000원초과 5,000원미만 일때 진입 가격의 10틱하락시 SetStopLoss 실행. input : starttime(90500),endtime(120000),XTime(123000); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; } Input : Period(12), Period1(5); Var : value(0),TickSize(0); value = StochasticsK(Period,Period1); # 매수/매도청산 If CrossUP(value, 20) Then { Buy("Buy"); } # 매도/매수청산 If CrossDown(value, 80) Then { ExitLong("Sell"); } SetStopLoss(5); SetStopLoss(10 * TickSize * CurrentContracts, pointstop); SetStopEndofday(XTime);