커뮤니티
질문 있습니다.
2025-10-22 17:38:40
295
글번호 227191
어제 답변 너무 감사합니다!!!
꼬였던 그 문제를 해결 해서 깔끔하게 되었습니다!! 감사합니다!! ㅠㅠ
이제 다른 질문인데요.
하루 목표 수익 달성 로직 관련 질문입니다. 그 뜻은 제가 하루 목표 수익을 달성하면 매매 중단하고 끝내는 로직입니다.
손실, 수익 합쳐서 순수익 목표 달성하면 매매 중단하고 싶은데 순수익 목표를 달성하지 못하고 그냥 끝내서 좀 해매고 있습니다.
MACD 매매 시스템에서 하루 목표 수익 기능을 구현 중인데, 예상과 다르게 작동해서 질문드립니다.ㅠㅠ
현재 상황
Input : DailyProfitTarget(30); // 목표 300틱
Input : UseDailyTarget(1);
var : TodayProfit(0);
var : TradeProfit(0);
// 익절 시
TradeProfit = (C - AvgEntryPrice) / 0.1;
TodayProfit = TodayProfit + TradeProfit;
if TodayProfit >= DailyProfitTarget Then {
TargetReached = 1;
}
문제는 아래와 같습니다.
DailyProfitTarget = 30 설정 (300틱 목표)
실제 누적 수익 252틱인데 매매종료 표시가 나오면서 매매 종료됨300틱 달성 전인데 왜 종료되는지 모르겠습니다.
질문
(C - AvgEntryPrice) / 0.1 계산 결과가 틱 단위인가요? (예: 마이크로 골드)
DailyProfitTarget 입력값은 어떤 단위로 해야 하나요?
TodayProfit 변수에 누적되는 값이 정확히 어떤 단위인가요?
아니면 제가 모르는 것이 있을까요?
감사합니다!
당일수익청산NetProfit
시스템
답변 1
예스스탁 예스스탁 답변
2025-10-23 08:53:19
안녕하세요
예스스탁입니다.
올리신 내용이면 매봉값을 누적하는 내용이 됩니다.1
아래식 참고하시기 바랍니다
하루 누적수익이 지정한 틱수에 도달하면 즉시 청산하고 더이상 진입을 하지 않습니다.
진입식 부분은 직접 추가하시기 바랍니다.
Input : 당일수익틱수(300);
Var : NP(0),N1(0),dayPl(0),당일수익(0);
var : PLcond(false);
//총손익(청산완료된 거래까지의 총손익)
NP = NetProfit;
//당일수익틱수를 포인트로 환산
당일수익 = PriceScale*당일수익틱수;
//영업일 변경
if Bdate != Bdate[1] Then
{
PLcond = false;
N1 = NP[1];
}
//당일수익 = 현재 총손익에서 전일 마지막봉 총손익을 차감
daypl = NP-N1;
//청산발생
if TotalTrades > TotalTrades[1] then
{
//당일손익이 당일수익이상이면 PLcond는 true
if daypl >= 당일수익 Then
PLcond = true;
//청산명이 dbp나 dsp이면 되었다면 PLcond는 true(봉미완성시 당일수익에 도달해서 즉시청산)
if (IsExitName("dbp",1) == true or IsExitName("dsp",1) == true) then
PLcond = true;
}
//당일수익에 도달하지 않았을때만 진입
if PLcond == false then
{
//진입식
}
#매수진입후 당일수익에 도달하면 즉시 청산
if MarketPosition == 1 then
{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
}
//매도진입후 당일수익에 도달하면 즉시 청산
if MarketPosition == -1 then
{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
}
즐거운 하루되세요
다음글