커뮤니티

문의 드립니다.

프로필 이미지
가자아이
2026-03-17 15:40:50
48
글번호 231118
답변완료

안녕하세요

ai서비스로 코딩을 하였으나 실제 매매에서 차이가 있어 문의 드립니다.


시스템 전략에서


1. 전일대비 20pt(input) 이상 갭상승 또는 갭하락으로 장시작시


2. 진입 시점에서 고점(몸통)과 저점(몸통)의 차이가 6pt(input) 이하일 때

이 두가지 조건이 모두 만족할때 진입을 금지하는 서식을 작성해 주시길 부탁드립니다.


갭상승(하락)과 변동폭이 적을때 진입을 제한하는 방식입니다.

고점과 저점은 몸통으로만 계산해주시기 바랍니다.





지표
답변 1
프로필 이미지

김윤한 예스스탁 답변

2026-03-17 16:14:07

안녕하세요 예스스탁입니다. input : tt(150000),당일진입횟수(3),손절(4); input : Period(20); Input : chkP(3), reChkP(30), stopChk(35); input : 갭(20),고저점차이(6); var: HH(0), LL(0), BS(0), SS(0); var: dayChk(0); var : TotalCount(0),PreDay(0),DayEntry(0); var : cnt(0),sum(0),daymav(0); #일간이평 계산 sum = 0; for cnt = 0 to Period-1 { sum = sum+DayClose(cnt); } daymav = ma(C,Period);# sum / Period; TotalCount = TotalTrades; if Bdate != Bdate[1] Then PreDay = TotalCount[1]; DayEntry = (TotalCount-PreDay)+IFF(MarketPosition != 0,1,0); if BarIndex == 0 then ClearDebug(); if dayindex == chkP then { HH = Highest(Max(C,O), chkP+1); LL = Lowest(Min(C,O), chkP+1); #if date == 20240612 then messageLog("--HH %.2f, LL: %.2f", HH, LL); } #if High >= HH and MarketPosition == 0 and ExitDate(1) < Date and time > 93000 then messageLog("HH %.2f, High: %.2f", HH, High); Condition1 = abs(DayOpen-DayClose(1)) >= 갭 and abs(C-O) <= 고저점차이; if DayIndex >= chkP # and Time < 95000 and sDate == NextBarSdate and EntryDate(0) < Date and EntryDate(1) < Date and DayEntry < 당일진입횟수 and Condition1 == False Then { if C > daymav Then Buy("B1", AtStop, HH); if C < daymav Then Sell("S1", AtStop, LL); } //if dayChk == 0 and High >= HH and MarketPosition == 0 and ExitDate(1) < Date and time > 93000 then { // messageLog("HH %.2f, High: %.2f", HH, High); // dayChk = 1; //} if ExitDate(1) == Date and Time < 150000 // and LatestEntryName(1) != "B2" // and LatestEntryName(1) != "S2" // and LatestEntryName(0) != "B2" // and LatestEntryName(0) != "S2" Then { if DayIndex < reChkP Then { HH = Highest(Max(C,O), DayIndex+1); LL = Lowest(Min(C,O), DayIndex+1); } Else { HH = Highest(Max(C,O), reChkP); LL = Lowest(Min(C,O), reChkP); } if DayEntry < 당일진입횟수 and Condition1 == False Then { if C > daymav Then Buy("B2", AtStop, HH); if C < daymav Then Sell("S2", AtStop, LL); } } if (MarketPosition == 1) Then { if DayIndex < stopChk Then { BS = Lowest(Min(C,O), DayIndex+1); } Else { BS = Lowest(Min(C,O), stopChk); } ExitLong("EL", AtStop, BS); } if (MarketPosition == -1) Then { if DayIndex < stopChk Then { SS = Highest(Max(C,O), DayIndex+1); } Else { SS = Highest(Max(C,O), stopChk); } #messageLog(" SS %.2f", SS); ExitShort("ES", AtStop, SS); } SetStopLoss(손절,PointStop); SetStopEndofday(151500); 즐거운 하루되세요