Ошибки, баги, вопросы - страница 2961

 
Aleksei Skrypnev:

Что с нагрузкой на впс на оперативку в 1-ую очередь/процессор? Из за проблем с этим какие только глюки не бывают.-больше к мт5 по нехватке памяти.

Всего хватает с избытком. Мощная машина.

как вариант попробывать ловит ли контр и шифт сама виндовс на впс.

Ловит.

 
Возник вопрос: маржа по курсовым разницам должна или нет пересчитываться? Я в отчетах МТ вижу, что она не пересчитывается. Например, счет в долларах, я покупаю газмяс или еще что-то, котирующееся в рублях (маржа в рублях). В этот момент на счете блокируется маржа в долларах по курсу на момент покупки. Но через какое-то время, на след. день например, из-за изменения usdrub по идее должна получаться уже другая сумма маржи в долларах.
 

Прошу поделиться соображениями по задаче (MT4):

Индикатор должен куда-то писать int-число. А советник его считывать.


Сделал это через глобальные переменные. Но на удаленном сервере такая реализация дает тормоза на GlobalVariableGet до 100мс! Очень часто - десятки мс. Хоть нигде и не делаю GlobalVariableFlush, но решил подстраховаться от возможных тормозов HDD и все перевел на GlobalVariableTemp. Не помогло.


Тогда перевел передачу/прием через Ресурсы. Стало гораздо лучше. Редко проскакивает несколько миллисекунд. В общем, значительно улучшились показатели, ушли сильнейшие тормоза на ровном месте.


Однако, возник вопрос, а есть ли еще способ решить задачу? Думал писать число в какое-нибудь свойство чарта. Приходится извиваться там, где никогда не предполагал.


Кто использует GlobalVariableGet на своих VPS, помониторьте длительность ее выполнения.

 
fxsaber:

Прошу поделиться соображениями по задаче (MT4):

Индикатор должен куда-то писать int-число. А советник его считывать.

EventChartCustom не подходит?

Почему просто в буфер не положить и не прочитать его советником? Или индикатор обязательно отдельно должен запускаться?

 
Andrey Khatimlianskii:

EventChartCustom не подходит?

Почему просто в буфер не положить и не прочитать его советником? Или индикатор обязательно отдельно должен запускаться?

Это HistoryTicks - ловля всех тиков для советников. Поэтому EventChartCustom не подходит, там своя очередь. С буфером аналогично.

 
fxsaber:

Прошу поделиться соображениями по задаче (MT4):

Индикатор должен куда-то писать int-число. А советник его считывать.


Сделал это через глобальные переменные. Но на удаленном сервере такая реализация дает тормоза на GlobalVariableGet до 100мс! Очень часто - десятки мс. Хоть нигде и не делаю GlobalVariableFlush, но решил подстраховаться от возможных тормозов HDD и все перевел на GlobalVariableTemp. Не помогло.

Тогда перевел передачу/прием через Ресурсы. Стало гораздо лучше. Редко проскакивает несколько миллисекунд. В общем, значительно улучшились показатели, ушли сильнейшие тормоза на ровном месте.

Однако, возник вопрос, а есть ли еще способ решить задачу? Думал писать число в какое-нибудь свойство чарта. Приходится извиваться там, где никогда не предполагал.

Кто использует GlobalVariableGet на своих VPS, помониторьте длительность ее выполнения.

В индикаторе заводишь int переменную, инициализируешь и сохраняешь туда число.
В индикаторе определяешь пользовательскую функцию, которая возвращает эту переменную.
Функцию определяешь с ключевым словом export.
В советнике импортируешь эту функцию, из name_indicator.ex4
Вызываешь функцию когда нужно.
Скорость не замерял.

 
Доброго времени !

Позаимствовал код из статьи про графические объекты, МТ5 если что.

1. Первая проблема: каким то образом, кнопки которые я сделал, функционируют на демо/реальном счете , но на визуализаторе их нет. Каких либо условий типо: MQLInfoInteger(MQL_TESTER) для тестера не нашел.

2. Попытался поставить брек поинты и прогнать дебаг - дебаг игнорирует брек поинты?

3. Почему дебаг всегда открывает тестирование в визуализаторе автоматически?

Пробовал прогнать в другом МТ5, та же проблема.
Тесты делал на OHLC

Что посоветуете?
 
Roman:

Не горячо, но уже тепло

 
A100:

Не горячо, но уже тепло

Чтоб было горячо, тогда через File Mapping с синхронизацией событий.

 
fxsaber:

Прошу поделиться соображениями по задаче (MT4):

Индикатор должен куда-то писать int-число. А советник его считывать.


Сделал это через глобальные переменные. Но на удаленном сервере такая реализация дает тормоза на GlobalVariableGet до 100мс! Очень часто - десятки мс. Хоть нигде и не делаю GlobalVariableFlush, но решил подстраховаться от возможных тормозов HDD и все перевел на GlobalVariableTemp. Не помогло.


Тогда перевел передачу/прием через Ресурсы. Стало гораздо лучше. Редко проскакивает несколько миллисекунд. В общем, значительно улучшились показатели, ушли сильнейшие тормоза на ровном месте.


Однако, возник вопрос, а есть ли еще способ решить задачу? Думал писать число в какое-нибудь свойство чарта. Приходится извиваться там, где никогда не предполагал.


Кто использует GlobalVariableGet на своих VPS, помониторьте длительность ее выполнения.

если использование user32.dll не критично, то вот еще вариант. Ничего не помню про замеры, но там же ниже писал, что вроде работает шустро. Вы там еще спрашивали - зачем мне скорость :))
решение универсальное (между терминалами тоже можно использовать), не не событийное. Придется с таймером работать. Впрочем минимальное время между событиями в   OnChartEvent тоже не может быть менее 1/64 секунды.

Причина обращения: