커뮤니티

질문 있습니다.

프로필 이미지
스오어스
2025-10-22 19:27:45
56
글번호 227194
답변완료

안녕하세요.
아직도 코드이랑 씨름을 하고 있습니다.
지금 어려운 그 문제가 있는데 일일 수익 표시 타이밍 문제입니다..
해외선물 23시간 인데
아침 8시 부터 20시까지 매매하면서 수익, 손실를 차트에 표시 하고
새벽 5시에 전날 누적 수익을 표시하려고 하는데, 항상 0T만 표시됩니다.
// 새벽 5시 표시

if CurrentHour == 5 and CurrentHour != CurrentHour[1] Then {
    Text_New(sDate, sTime, H + 2.0, "+" + NumToStr(TodayProfit, 0) + "T");
}

// 날짜 변경 시 초기화
if Bdate != Bdate[1] Then {
    TodayProfit = 0;
}


🆕 추가로 이상한 점:

거래가 1회만 있는 날: 새벽 5시에 "+234T" 정상 표시됨
거래가 여러 번 있는 날 (수익+손실): 새벽 5시에 "0T" 표시됨

예를 들어:

케이스1: +2341회만 → 05:00"+234T" ✅
케이스2: +234, -45(순수익 +189)05:00"0T" 으로 순수익이 표시 되지 않습니다.

질문이 있습니다.
Bdate 변경과 CurrentHour == 5 중 어느 것이 먼저 실행되나요?
Bdate는 정확히 언제 변경되나요? (자정? 새벽 5시? 거래 시작 시간?)
새벽 5시에 전날 수익을 표시하려면 어떤 조건을 사용해야 하나요?
추가로 이상한 점에서 거래 횟수에 따라 결과가 다른 이유가 있을까요? 1회만 거래하면 새벽 5시에 통계 보듯이 순수익 정상 표시 되고 1회 이상 거래 하면 새벽 5시에 순수익 통계가 안 나옵니다.
감사합니다!

NetProfitText_New
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-10-23 10:41:32

안녕하세요 예스스탁입니다. 1 수식은 항상 위에서 아래로 읽어들어갑니다. 영업일 변경과 5시가 동일봉이면 작서하신 식이면 CurrentHour == 5가 먼저 실행되고 bdate가 그다음실행됩니다. 2 올리신 수식에서 TodayProfit이 당일 누적수익을 정상적으로 계산되고 있는지 알수 없습니다. 아래식 참고하시기 바랍니다. 5시에 당일누적손익(현재총손익-전일총손익)을 출력합니다. var : NP(0),NP1(0); NP = NetProfit; if CurrentHour == 5 and CurrentHour != CurrentHour[1] Then { Text_New(sDate, sTime, H + 2.0, "+" + NumToStr(NP-NP1, 0) + "T"); } // 날짜 변경 시 초기화 if Bdate != Bdate[1] Then { NP1 = NP[1]; } 즐거운 하루되세요