увы, не прокатило, компилятор пока отслеживает const ('price' - constant variable cannot be passed as referenceMomentum_DLL.mq55717)
вот 2 ф-ции расчета в С# oncalculate , в одной передаем по ссылке ( ref ) массив price, во второй просто параметром массив передается ( без ref ), я пока не смог без копирования победить - в комментарии в MQL сигнатуры ф-ци написал
увы, не прокатило, компилятор пока отслеживает const ('price' - constant variable cannot be passed as referenceMomentum_DLL.mq55717)
вот 2 ф-ции расчета в С# oncalculate , в одной передаем по ссылке ( ref ) массив price, во второй просто параметром массив передается ( без ref ), я пока не смог без копирования победить - в комментарии в MQL сигнатуры ф-ци написал
Имея запрограммированный в С++ в прошлом, я помню, что мы могли бы сделать постоянный параметр reference/pointer в методе. Если моя память правильная, ниже указано, что метод не может изменить ссылку, а сама ссылка является постоянной...
Вопрос в том, можно ли организовать двустороннюю связь между сервисами и советником через ресурсы?
Если да, то вещь однозначно нужная и полезная!
Вы совершенно правы. Это возможно с текущей версией, но вы должны создать какое-то специальное решение. Было бы неплохо иметь встроенное решение для связи между экспертами / индикаторами и сервисами, а также между сервисами. Ренат знает это без сомнений.
Не могу дождаться, чтобы увидеть решение Metaquotes для этих проблем общения :-)
Вы совершенно правы. Это возможно с текущей версией, но вы должны создать какое-то специальное решение. Было бы неплохо иметь встроенное решение для связи между экспертами / индикаторами и сервисами, а также между сервисами. Ренат знает это без сомнений.
Не могу дождаться, чтобы увидеть решение Metaquotes для этих проблем общения :-)
У меня есть решение для связи между советниками и индикаторами на МТ5. Я сейчас его тестирую. Известно, что каждый подготовленный кодер может самостоятельно передавать данные между своими советниками и индикаторам через ресурсы, но если речь идёт о развитии сложного, многопланового взаимодействия МТ5-программ как неотъемлемой практики современного алготрейдинга, необходим продуманный и отлаженный метод общения, реализованный в специальной программе "посреднике", координирующей потоки данных. Это моя тема и я ее разрабатываю. :)
ЗЫ: не знаю пока как передать в C# цены price[] без копирования - есть варианты?
ArraySwap.
ArraySwap.
увы, не прокатило, компилятор пока отслеживает const ( 'price' - constant variable cannot be passed as reference Momentum_DLL.mq5 57 17 )
вот 2 ф-ции расчета в С# oncalculate , в одной передаем по ссылке ( ref ) массив price, во второй просто параметром массив передается ( без ref ), я пока не смог без копирования победить - в комментарии в MQL сигнатуры ф-ци написал
увы, не прокатило, компилятор пока отслеживает const ( 'price' - constant variable cannot be passed as reference Momentum_DLL.mq5 57 17 )
вот 2 ф-ции расчета в С# oncalculate , в одной передаем по ссылке ( ref ) массив price, во второй просто параметром массив передается ( без ref ), я пока не смог без копирования победить - в комментарии в MQL сигнатуры ф-ци написал
ME показывает, что в сигнатуре нет const.
ME показывает, что в сигнатуре нет const.
да, так и есть, это особенность C# - запрещать писать в сигнатуре ф-ции const
http://qaru.site/questions/672666/const-function-parameter-in-c
а особенность MQL - это запрещать передавать массивы параметром, т.е. только по ссылке
да, так и есть, это особенность C# - запрещать писать в сигнатуре ф-ции const
Скорее всего, слабо понимаю, но эта особенность C# выглядит дико!
Скорее всего, слабо понимаю, но эта особенность C# выглядит дико!
как говорится дареному коню...ну что дали бесплатно то и юзаем )))
а никак нельзя компилятор "замудрить" с помощью define или template чтобы уйти от этого ограничения в MQL ?
а никак нельзя компилятор "замудрить" с помощью define или template чтобы уйти от этого ограничения в MQL ?
Задал вопрос.
Вопрос в том, можно ли организовать двустороннюю связь между сервисами и советником через ресурсы?
Если да, то вещь однозначно нужная и полезная!
Вы совершенно правы. Это возможно с текущей версией, но вы должны создать какое-то специальное решение. Было бы неплохо иметь встроенное решение для связи между экспертами / индикаторами и сервисами, а также между сервисами. Ренат знает это без сомнений.
Не могу дождаться, чтобы увидеть решение Metaquotes для этих проблем общения :-)
Вы совершенно правы. Это возможно с текущей версией, но вы должны создать какое-то специальное решение. Было бы неплохо иметь встроенное решение для связи между экспертами / индикаторами и сервисами, а также между сервисами. Ренат знает это без сомнений.
Не могу дождаться, чтобы увидеть решение Metaquotes для этих проблем общения :-)
При помощи глобальных переменных терминала можно передавать до 8 байт информации в одной переменной.
Для разграничения доступа из разных MQL5-программ можно использовать GlobalVariableSetOnCondition