커뮤니티

시초가 매매 수식 수정 부탁드립니다.

프로필 이미지
승부사1
2021-09-30 19:02:52
1103
글번호 152595
답변완료
아래의 수식으로 항셍시장에 적용해 보았습니다. 포지션 진입을 하는 날과 하지 않는 날이 있는데요. 그 기준을 좀처럼 알기 어렵네요. 전일종가 대비 갭상승이면 매수, 갭하락이면 매도가 진행되게 할 방법이 없을까요? 점검 좀 부탁드리겠습니다. 1. 매수, 매도 포지션이 시초가에 정확하게 적용되었으면 좋겠습니다. 2. 봉 완성을 기다리지 않고 즉시 실행되길 바랍니다. 3. 손절 n틱 추가 바랍니다. - 아 래 - input : n1(10),n2(20); var : DD(0),OO(0); var : Year(0),V1(0),V2(0),V3(0),V4(0),summer(False); var : StartTime(0); if sdate != sdate[1] Then { DD = DayOfWeek(sdate); if DD == 1 Then OO = DayOpen; Year = Floor(bdate/10000); V1 = (10000 * Year) + (100 * 3) + 1; V2 = 15 - dayofweek(v1); v3 = (10000 * Year) + (100 * 11) + 1; v4 = 8 - dayofweek(v3); Summer = bdate > (10000 * Year) + (100 * 3) + v2 And bdate < (10000 * Year) + (100 * 11) + v4; if summer == true Then StartTime = 040000; Else StartTime = 101500; } if StartTime > 0 and ((NextBarSdate != sDate and NextBarStime >= StartTime) or (NextBarSdate == sDate and NextBarStime >= StartTime and sTime < StartTime)) Then { if NextBarOpen > c Then Buy("매수",AtMarket); if NextBarOpen < c Then Sell("매도",AtMarket); } if MarketPosition == 1 Then ExitLong("매수청산",AtStop,Highest(H,BarsSinceEntry)-n1); if MarketPosition == -1 Then ExitShort("매도청산",AtStop,lowest(L,BarsSinceEntry)-n1); SetStopProfittarget(n2*PriceScale,PointStop);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-10-05 09:10:13

안녕하세요 예스스탁입니다. 항셍은 사용자분이 시간을 지정할 수 밖에 없습니다. 시간을 외우변수로 처리해 드립니다. input : ntime(101500),n1(10),n2(20),n3(20); if ((NextBarSdate != sDate and NextBarStime >= ntime) or (NextBarSdate == sDate and NextBarStime >= ntime and sTime < ntime)) Then { if NextBarOpen > c Then Buy("매수",AtMarket); if NextBarOpen < c Then Sell("매도",AtMarket); } if MarketPosition == 1 Then ExitLong("매수청산",AtStop,Highest(H,BarsSinceEntry)-n1); if MarketPosition == -1 Then ExitShort("매도청산",AtStop,lowest(L,BarsSinceEntry)-n1); SetStopProfittarget(n2*PriceScale,PointStop); SetStopLoss(n3*PriceScale,PointStop); 즐거운 하루되세요 > 승부사1 님이 쓴 글입니다. > 제목 : 시초가 매매 수식 수정 부탁드립니다. > 아래의 수식으로 항셍시장에 적용해 보았습니다. 포지션 진입을 하는 날과 하지 않는 날이 있는데요. 그 기준을 좀처럼 알기 어렵네요. 전일종가 대비 갭상승이면 매수, 갭하락이면 매도가 진행되게 할 방법이 없을까요? 점검 좀 부탁드리겠습니다. 1. 매수, 매도 포지션이 시초가에 정확하게 적용되었으면 좋겠습니다. 2. 봉 완성을 기다리지 않고 즉시 실행되길 바랍니다. 3. 손절 n틱 추가 바랍니다. - 아 래 - input : n1(10),n2(20); var : DD(0),OO(0); var : Year(0),V1(0),V2(0),V3(0),V4(0),summer(False); var : StartTime(0); if sdate != sdate[1] Then { DD = DayOfWeek(sdate); if DD == 1 Then OO = DayOpen; Year = Floor(bdate/10000); V1 = (10000 * Year) + (100 * 3) + 1; V2 = 15 - dayofweek(v1); v3 = (10000 * Year) + (100 * 11) + 1; v4 = 8 - dayofweek(v3); Summer = bdate > (10000 * Year) + (100 * 3) + v2 And bdate < (10000 * Year) + (100 * 11) + v4; if summer == true Then StartTime = 040000; Else StartTime = 101500; } if StartTime > 0 and ((NextBarSdate != sDate and NextBarStime >= StartTime) or (NextBarSdate == sDate and NextBarStime >= StartTime and sTime < StartTime)) Then { if NextBarOpen > c Then Buy("매수",AtMarket); if NextBarOpen < c Then Sell("매도",AtMarket); } if MarketPosition == 1 Then ExitLong("매수청산",AtStop,Highest(H,BarsSinceEntry)-n1); if MarketPosition == -1 Then ExitShort("매도청산",AtStop,lowest(L,BarsSinceEntry)-n1); SetStopProfittarget(n2*PriceScale,PointStop);