맞습니다 - 여기에서 총 손실(손실)은 손실로 ROW에서 마감된 주문 내역에 따라 계산됩니다.
당신은 약간 다를 수 있지만 원칙은 동일합니다.
//---------------------расчет по истории ордеров номера очередной итерации-----------------------------------------------
Iteration = 0 ; // зануляем инерации перед их учетом в цикле по истории
Sum_Loss = 0 ; // суммарный убыток по этим итерациямdatetime
Time_at_History_Current = 0 ,
Time_at_History_Previos = 0 ;
if ( OrdersHistoryTotal () != 0 )
{
for ( int counter = OrdersHistoryTotal ()- 1 ; counter >= 0 ; counter--)
{
OrderSelect (counter, SELECT_BY_POS, MODE_HISTORY);
if ( OrderSymbol () == Symbol () && OrderMagicNumber () == MagicNumber)
{
if ( OrderType () == OP_BUY || OrderType () == OP_SELL)
{
if ( OrderProfit () < 0 ) // если убыток по выбранному ордеру, то считаем суммарный и записываем время закрытия ордера// для последующего его анализа при подсчете количества итераций
{
double lastLoss = OrderProfit ();
Sum_Loss=Sum_Loss+lastLoss; // считаем общий убыток по закрытым подряд убыточным ордерам
Time_at_History_Current = OrderCloseTime ();
}
//Print(" Time_at_History_Current_в цикле = ", TimeToStr(Time_at_History_Current, TIME_DATE|TIME_SECONDS));//Print(" Time_at_History_Previos_в цикле = ", TimeToStr(Time_at_History_Previos, TIME_DATE|TIME_SECONDS));if (Time_at_History_Current != Time_at_History_Previos) // если они не равны, то считаем итерации и делаем их равными
{
Time_at_History_Previos = Time_at_History_Current ;
Iteration++;
//Print("Iteration at History в условии сравнения = ", Iteration);
}
else// они равны, то проверяем, дополнительно, наличие профита по выбранному следующему ордеру и выходим из цикла
{
if ( OrderProfit () >= 0 )
break ;
}
}
}
}
}
int start()
{
//----RefreshRates (); // Обновление данных
Symb= Symbol ();
int cnt, ticket, total;
int ABuy= 0 ; // флаг на покупку /продажу int ASell= 0 ;
Comment ( ".....Вот сюда и пишите вывод всех флагов......" );
if (NewBar() == true)
{
x=x0; //передаем данные
x1=x01;
x2=x02;
어째서인지 차익이 찍혀야 하는 것이 아니라..... 추첨이 끝나면 차익이 30pp가 되어야 하는 차익에 쓰는데 전혀 다른 .... 뭔 개쓰레기
무슨 말도 안되는 소리: "사실, 주문을 여는 것과 닫는 것의 차이를 계산하고 요약하세요??????" ...
그리고 어떤 볼륨에? 알 필요 없어? 아이템 가격이 달라집니다...
이익은 포지션 의 거래량에 따라 포인트가 아니라 통화로 계산됩니다.
어째서인지 차익이 찍혀야 하는 것이 아니라..... 추첨이 끝나면 차익이 30pp가 되어야 하는 차익에 쓰는데 전혀 다른 .... 뭔 개쓰레기
주문의 이익은 포인트가 아니라 예금 통화 입니다.
맞습니다 - 여기에서 총 손실(손실)은 손실로 ROW에서 마감된 주문 내역에 따라 계산됩니다.
당신은 약간 다를 수 있지만 원칙은 동일합니다.
주문의 이익은 포인트가 아니라 예금 통화입니다.
그래서 포인트로 필요해요 로트는 1로 고정 .... 근데 어째서인지 손익이 실제랑 안맞아서..... 그래서 손익분기점수를 더 계산하고싶어요 쉽게 요약하고 결과를 얻으십시오 =)
맞습니다 - 여기에서 총 손실(손실)은 손실로 ROW에서 마감된 주문 내역에 따라 계산됩니다.
당신은 약간 다를 수 있지만 원칙은 동일합니다.
감사합니다 바로 알아볼게요 =)
그래서 포인트로 필요해요 로트는 1로 고정 .... 근데 어째서인지 손익이 실제랑 안맞아서..... 그래서 손익분기점수를 더 계산하고싶어요 쉽게 요약하고 결과를 얻으십시오 =)
다시:
주문의 이익은 포인트 가 아니라 예금 통화 입니다.
그래서 포인트로 필요해요 로트는 1로 고정 .... 근데 어째서인지 손익이 실제랑 안맞아서..... 그래서 손익분기점수를 더 계산하고싶어요 쉽게 요약하고 결과를 얻으십시오 =)
로트가 일정하다면 테스터의 이익을 Point 로 나눕니다. 포인트 수익이 발생합니다.
마지막으로 게시된 Kim 함수 GetPotentialLossInCurrency (https://forum.mql4.com/en/11287/page107)는 미결 주문만 고려합니다.
보류 중인 주문 의 회계를 포함하여 조금 확장하려고 했습니다(단순히 다른 유형 추가). 그러나 보류 중인 주문은 고려되지 않습니다. 그들은 다르게 계산됩니까? 문서에는 이것에 대해 아무 말도 없습니다....주석과 함께 차트의 모든 플래그를 표시하면 거래가 열리는 이유가 명확해질 것입니다.
개입, 지금은 전혀 커밋하지 않습니다.
개입, 지금은 전혀 커밋하지 않습니다.
왜 그래? 한 번에 하나의 Comment `에 있는 모든 플래그를 표시합니다.
바로 여기에: