Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
странно конечно... у меня функция выдает корректный результат
и совпадает...
---
как вариант - для быстрого поиска проблемы
что бы избежать накладок
установите в отдельный каталог еще одну копию MT4 - не копируя с текущего каталога где проблема - а именно с дистрибутива т е инсталируйте заново
затем положите только тот советник который так себя ведет
разумеется заново создайте историю HST файлы
history\downloads можно и скопировать что бы не качать - хотя если трафик безлимита то все равно
и проверьте
кстати проверьте это на стандартном из примера MACD Sample_1.MQL4
который поставляется вместе с дистрибутивом
---
Платформа не причём. Я проверял на разных платформах - Альпари и Мастерфорекс. Результат одинаковый. При проверке на MACD Sample_1 AccountProfit() =0. Интересно то, что AccountEquity()
работает правильно.
Платформа не причём. Я проверял на разных платформах - Альпари и Мастерфорекс. Результат одинаковый. При проверке на MACD Sample_1 AccountProfit() =0. Интересно то, что AccountEquity()
работает правильно.
а Вы имеете на разных брокерах разные терминалы? т е
типа
C:\Pprogram File\MTAlpari
C:\Pprogram File\MTMasterforex
у меня для разработок один терминал (что бы не мучаться с закачкой истории и переброской советников с индикаторами)
а брокеров подключаю разных
----
а пример MACD Sample_1 на обоих терминалах одинаково ?
а Вы имеете на разных брокерах разные терминалы? т е
типа
C:\Pprogram File\MTAlpari
C:\Pprogram File\MTMasterforex
у меня для разработок один терминал (что бы не мучаться с закачкой истории и переброской советников с индикаторами)
а брокеров подключаю разных
----
а пример MACD Sample_1 на обоих терминалах одинаково ?
Да, у меня каждый терминал скачан у своего брокера.
Почитайте статью Визуализация тестирования. Графики состояния счета. Думаю, вопрос после прочтения отпадет.
Вопрос после прочтения не отпадает. В статье написано " Все функции, отвечающие за эту информацию, возвращают значения реального счета." При тестировании счёт не реальный. Значит
что ...? В статье написано, что можно передать значение функции информации о счёте глобальной переменной и не написано.что нельзя выводить Comment'ом значение этой функции информации о
счёте. К тому же значения других функций информации о счёте: баланс, экьюти отображаются у меня на экране правильно, а только AccountProfit() неправильно.
Вот индикатор, который выводит на график значения баланса, эквити и текущей прибыли.
Подключитесь к любому торговому счету (реальный, конкурсный или демо - не важно) и запустите тестирование советника MACD.sample в визуальном режиме, а затем набросьье на окно визуального тестирования этот индикатор. И Вы увидите, что индикатор, наброшенный на окно визуального тестирования, не обращается к данным тестера. Визуальный режим не прежназначен для этого, если хотите наблюдать эти значения, то сделайте так, как пишется в статье komposter'а, на которую я давал ссылку.
Вот индикатор, который выводит на график значения баланса, эквити и текущей прибыли.
Подключитесь к любому торговому счету (реальный, конкурсный или демо - не важно) и запустите тестирование советника MACD.sample в визуальном режиме, а затем набросьье на окно визуального тестирования этот индикатор. И Вы увидите, что индикатор, наброшенный на окно визуального тестирования, не обращается к данным тестера. Визуальный режим не прежназначен для этого, если хотите наблюдать эти значения, то сделайте так, как пишется в статье komposter'а, на которую я давал ссылку.
Вообще передо мной стоит другая задача. Мне нужно в процессе работы эксперта установленного на демо или реале вести контроль чистой прибыли и при достижении ей определённого уровня закрывать все позиции. Для этого я использую функции информации о счёте. Всё это действует, когда эксперт работает на счёте. А как же сделать, чтобы это работало в тестере, чтобы проверить работу на истории. И почему при прогоне в тестере другие функции информации о счёте работают правильно? И почему-то в ссылке https://forum.mql4.com/ru/5872, где Вы объясняете взаимосвязи с основными параметрами счёта и приводите скрипт именно функция AccountProfit() случайно или нет, но обойдена вниманием. Нет её и в скрипте и не объяснено какому числу она равна в данном конкретном примере. Я только подозреваю. что это наверно в Вашей формуле фигурирует как Profit?
Вопрос после прочтения не отпадает. В статье написано " Все функции, отвечающие за эту информацию, возвращают значения реального счета." При тестировании счёт не реальный. Значит
что ...? В статье написано, что можно передать значение функции информации о счёте глобальной переменной и не написано.что нельзя выводить Comment'ом значение этой функции информации о
счёте. К тому же значения других функций информации о счёте: баланс, экьюти отображаются у меня на экране правильно, а только AccountProfit() неправильно.
хотел тут подсказать для особенно дотошных что надо не только читать статью Визуализация тестирования. Графики состояния счета. а ещё и понимать что там написано
...
AccountProfit() относится к аккаунту с которым торгует сам терминал MT4 а НЕ ТЕСТЕР внутри терминала
хотел тут подсказать для особенно дотошных что надо не только читать статью Визуализация тестирования. Графики состояния счета. а ещё и понимать что там написано
...
AccountProfit() относится к аккаунту с которым торгует сам терминал MT4 а НЕ ТЕСТЕР внутри терминала
Я тоже так считал, но стал сомневаться, когда увидел, что при прогоне теста в визуальном режиме, например, такая функция как Comment(AccountEquity()) правильно отображает изменение
суммы собственных средств. При окончании прогона теста в отчёте, если сложить чистую прибыль и начальный депозит то это величина точно соответствует величине Comment(AccountEquity())
на графике. Однако при тех же условиях функция AccountProfit() не имеет соответствия значению в отчёте.
Вообще передо мной стоит другая задача. Мне нужно в процессе работы эксперта установленного на демо или реале вести контроль чистой прибыли и при достижении ей определённого уровня закрывать все позиции. Для этого я использую функции информации о счёте. Всё это действует, когда эксперт работает на счёте. А как же сделать, чтобы это работало в тестере, чтобы проверить работу на истории. И почему при прогоне в тестере другие функции информации о счёте работают правильно? И почему-то в ссылке https://forum.mql4.com/ru/5872, где Вы объясняете взаимосвязи с основными параметрами счёта и приводите скрипт именно функция AccountProfit() случайно или нет, но обойдена вниманием. Нет её и в скрипте и не объяснено какому числу она равна в данном конкретном примере. Я только подозреваю. что это наверно в Вашей формуле фигурирует как Profit?
Похоже проблема не только у Вас!
https://forum.mql4.com/ru/13497
https://forum.mql4.com/ru/13342
у тестера немало недостатков
--
к примеру в мультивалютных советника при чтении в тестере пары которая не тестируется
т е прогон идет допустим по евро а читается EURJPY !
получить Ask и Bid в реальной работе можно mAsk= MarketInfo ( "EURJPY ", MODE_ASK)
а вот в тестере никак нельзя... хотя хочется
я явно вызываю iCustom("EURJPY", ... );
если в индикаторе стоят Ask и Bid онн получит Ask и Bid которые возьмутся просто
из окружения и будут равны Ask и Bid которые в данный момент приходят с реального рынка но никак не из истории
---
потому приходится пользоваться iClose("EURJPY",PERIOD_M1,0) или iClose("EURJPY",PERIOD_M1,1)
получать Bid а Ask получать приращением спреда
---
тестер не генерирует тиков по парам которы вы просто читаете а не гоните
---
попробуйте профит считать своими функциями - это не сложно