Я использую последнюю версию Virtual, а Symbol_Base рассчитывается в валюте.
Вы уверены?
if (true) // Режим прибыли в валюте.
{
this.TickSize = ::SymbolInfoDouble(sSymb, SYMBOL_TRADE_TICK_SIZE);
this.TickValue = ::SymbolInfoDouble(sSymb, SYMBOL_TRADE_TICK_VALUE) / this.TickSize;
}
else// Режим прибыли в пипсах.
{
this.TickSize = this.Point;
this.TickValue = 1 / this.TickSize;
}
fxsaber #: Приведите скриншоты, показывающие различия. У меня не воспроизводится.
Я гарантирую, что всё соответствует моим предыдущим скриншотам. Вам нужно найти счёт с режимом расчёта свопов в пунктах. Если потребуется, я могу предоставить такой.
hini #: Я гарантирую, что всё соответствует моим предыдущим скриншотам. Вам нужно найти счёт с режимом расчёта свопов в пунктах. Если потребуется, я могу предоставить такой.
USD-currency.
AUD-currency.
2025.06.3014:35:36.515 XAUUSD,M1: testing of Experts\TestSwaps.ex5 from2025.06.0100:00 to 2025.06.2600:00 started with inputs:
2025.06.3014:35:36.515 isVir=true
2025.06.3014:35:36.515 =
2025.06.3014:35:36.515 inLotSize=0.012025.06.3014:35:36.515 inTPdist=0.12025.06.3014:35:36.515 inSLdist=0.22025.06.3014:35:36.5152025.06.0100:00:00swap_mode = SYMBOL_SWAP_MODE_POINTS
Это странно. Можете ли вы запустить этот код и посмотреть, что он выводит? Я все еще получаю неправильное значение, поэтому я повторно скачал Virtual и только изменил Symbol_Base на true.
Я нашёл в кодовой базе библиотеку этого автора для расчёта свопов — в файле Functions.mqh. Вот корректная ссылка: https://www.mql5.com/en/code/28029
свопы у меня рассчитываются некорректно
Спасибо за баг-репорт, исправлено.
Функция CalcSwaps предназначена для расчета свопов в истории торгов. Делал для однократного применения в конце прохода.
Спасибо за баг-репорт, исправлено.
thanks!
Результат все тот же, что и раньше, все еще неверный.
Расчет по ссылке, которую я разместил выше, верен.
Расчет свопа более сложен, возможно, можно предоставить указатель на функцию для реализации пользователями. По умолчанию своп рассчитывается в валюте.
Функция CalcSwaps предназначена для расчета свопов в истории торгов. Делал для однократного применения в конце прохода.
Можно ли автоматически вызвать расчет свопа один раз после остановки?
Результат все тот же, что и раньше, все еще неверный.
Я использую последнюю версию Virtual, а Symbol_Base рассчитывается в валюте.
Вы уверены?
Вы уверены?
Приведите скриншоты, показывающие различия. У меня не воспроизводится.
Я гарантирую, что всё соответствует моим предыдущим скриншотам. Вам нужно найти счёт с режимом расчёта свопов в пунктах. Если потребуется, я могу предоставить такой.
USD-currency.
AUD-currency.
USD-currency.
AUD-currency.
Это странно. Можете ли вы запустить этот код и посмотреть, что он выводит? Я все еще получаю неправильное значение, поэтому я повторно скачал Virtual и только изменил Symbol_Base на true.