Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 665

 
создать
nikitasa1997:

Доброго времени суток, уважаемые форумчане! Помогите пожалуйста новичку. Написал пользовательский индикатор, внизу фрагмент кода, в оригинале их больше 1000 таких строчек по порядку, как и представленно в коде, поэтому весь не стал вставлять.

'+' - program is too complex. Выдает вот такую ошибку.

Почитал ветки форума, это ошибка происходит тогда, когда больше функция слишком длинная. Как разделить функцию на несколько подфункций? Покажите пожалуйста на примере моего кода.


создать файл filter.mq4 с данной функцией и сохранить в \MQL4\Include\


потом вызывать из индикатоора #include <filter.mq4>

если в инклюднике переменная response, то обьявлять её в индикаторе не надо, просто использовать где нужно и всё.

 
evillive:
создать

создать файл filter.mq4 с данной функцией и сохранить в \MQL4\Include\


потом вызывать из индикатоора #include <filter.mq4>

если в инклюднике переменная response, то обьявлять её в индикаторе не надо, просто использовать где нужно и всё.



Большое спасибо!)
 
Chiripaha:

Краем глаза глянул предлагаемые Вам ранее решения другими специалистами. Возможно, при загрузке шаблонов у Вас могут возникать ограничения прав. Это отражено в описании ф-ии ChartApplyTemplate(). Но это лишь как вариант. Или что-то подобное. Поэтому, когда Вы загружаете через визуализацию, то все права сохранятся, а когда программно - ограничиваются.

            Цитата из описания функции:

При сохранении шаблона запоминаются и права для запущенных на графике программ: право на торговлю и право на использование DLL. В целях безопасности эти права при применении шаблона к графику могут ограничиваться:

Права на торговлю и использование DLL не могут быть повышены при запуске советника путем применения шаблона с помощью функции ChartApplyTemplate().

Если у mql4-программы, которая вызывает функцию ChartApplyTemplate(), отсутствуют права на торговлю, то эксперт, загруженный при помощи шаблона, также не будет иметь прав на торговлю вне зависимости от настроек шаблона.

Если у mql4-программы, которая вызывает функцию ChartApplyTemplate(), есть права на торговлю, а в настройках шаблона права отсутствуют, то советник, загруженный при помощи шаблона, не будет иметь прав на торговлю.


права на торговлю и там и там имеются, так же и загрузка dll. я пробовал и отключать их и включать. изменял шаблон, как просто график с индикаторами, так и с уже загруженным советником. но результат один и тот же: на тестере без визуализации советник ничего не делает, с визуализацией - все как задумано)) не знаю... видать, действительно писать разработчикам надо или что-нибудь другое придумать без шаблонов.

 

Такой вопрос:

Представим, что у нас есть поисковый полнотекстовый сервер, обладающий кэшем для результатов запросов. Нам необходимо рассчитать эффективность кэширования (максимальный размер кэша и процент попаданий) при заданном времени кэширования.

Входные данные

На вход программе подается текстовый файл с поступившими на сервер запросами, с указанием времени и поисковой строки, а также время хранения кэша в секундах.

Выходные данные

Программа после выполнения должна вывести следующие значения: количество обработанных поисковых запросов, количество уникальных запросов, максимальных размер кэша (в количестве записей), вероятность попадания в кэш.



Не могу понять, что значит "максимальных размер кэша (в количестве записей)", как его рассчитать?

 
 Доброго времени суток господа, у меня есть нубсуий, но очень важный вопрос, есть ли возможность настройки робота так что бы он не торговал в определенное время, если есть то как это сделать можно?
 
На сколько увеличивается показатель стандартного объема форекс при изменении цены на один тик (на 1 или 2 ???) 
 
Mavellol:
 Доброго времени суток господа, у меня есть нубсуий, но очень важный вопрос, есть ли возможность настройки робота так что бы он не торговал в определенное время, если есть то как это сделать можно?


Нужно в самом советнике такую возможность реализовать.
 

Всем привет!

Помогите разобратья с MarketInfo(Symbol(),MODE_MARGINREQUIRED)

double One_Lot =MarketInfo(Symbol(),MODE_MARGINREQUIRED);
переменная One_Lot будет содержать стоимость одного лота по текущей валюте.
Пример расчета лота для EURUSD (курс Price =1.3606):
стандартный размер контракта (1 лот) = 100000
при покупке 100000 EUR мы должны заплатить 100000*1.3606=136060$
у нас есть плечо = 100,соответственно мы заплатим One_Lot=136060/100=1360.6$

(как я понял все эти вычисления делает MarketInfo(Symbol(),MODE_MARGINREQUIRED) и наш One_Lot=1360.6) 

но в скрипте результат другой:

double Price = Ask;
Print ("Price =",Price);

double One_Lot = MarketInfo ( Symb, MODE_MARGINREQUIRED ) ;   //  стоимость одного лота
Print ("One_Lot =",One_Lot); 

на выходе

17:10:30 inform EURUSD,H1: Price =1.3606

17:10:30 inform EURUSD,H1: One_Lot =1600.0

 

Где моя ошибка? 

 
кто такой Symb и как его определяете в коде? При прямом вызове One_Lot =MarketInfo(Symbol(),MODE_MARGINREQUIRED) работает нормально.
 
evillive:
кто такой Symb и как его определяете в коде? При прямом вызове One_Lot =MarketInfo(Symbol(),MODE_MARGINREQUIRED) работает нормально.

Спасибо что откликнулся!

в скрипте  у меня

Symb = Symbol ( ); 

пробовал и как у Вас - результат тот же  One_Lot =1600.0

А какой у Вас результат?

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