Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 105

 
Andrey Sokolov:

Приветствую.

Подскажите как прописать условие чтоб если на текущей свече ордер уже был открыт по заданным условиям и закрыт вручную то до наступления новой уже не отрывался? 

Если номер бара, на котором был открыт последний закрытый ордер совпадает с номером бара, на котором был закрыт последний закрытый ордер и этот номер равен нулю, то ...
 
Artyom Trishkin:
Если номер бара, на котором был открыт последний закрытый ордер совпадает с номером бара, на котором был закрыт последний закрытый ордер и этот номер равен нулю, то ...
респект и уважуха
 
Andrey Sokolov:
респект и уважуха
Не за что - ответ ведь как раз в вашем же вопросе ;)
 
Artyom Trishkin:
Начните с построения шаблона: в редакторе щёлкните правой кнопкой окне навигатора на Indicators и выберите создать папку. Назовите её как-нибудь - в ней будут располагаться именно ваши индикаторы.

Далее так же щёлкните по этой новой папке и выберите Новый файл. Откроется окно помощника, где вы выберите тип создаваемой программы - Пользовательский индикатор. Вам придётся пройти все шаги помощника, добавить входные параметры, тип отображения и пр. Попробуйте самостоятельно поразбираться с этим. Как только дойдёте до завершения, шаблон нового индикатора будет создан. Останется лишь наполнить его нужным кодом, но это уже следующий шаг...

Сложно решить, что именно потребуется, когда не знаешь до конца, как все будет реализовано.

Вопрос, нужна ли мне функция  On Timer?

OnChartEvent мне не нужно. Я не планирую ничего подобного.

По OnCalculate какой из вариантов более универсальный? OnCalculate (...prices)?  Думаю его выбрать.  

 
Andrey Koldorkin:

Сложно решить, что именно потребуется, когда не знаешь до конца, как все будет реализовано.

Вопрос, нужна ли мне функция  On Timer?

OnChartEvent мне не нужно. Я не планирую ничего подобного.

По OnCalculate какой из вариантов более универсальный? OnCalculate (...prices)?  Думаю его выбрать.  

А вы что-то в таймере собираетесь рассчитывать? Вряд ли.

А вот то, что вам нужны цены OHLC - это вас должно натолкнуть на правильный вариант OnCalculate() из двух.
 
Привет! Прошу подсказки здесь,так как в другом месте толком ответить не могут. Меня интересует вопрос: можно ли заменить функцию локирования без использования встречных ордеров? То есть через заданное количество пунктов в шаге или в валюте,ордер или цепочка ордеров (преимущественно стоповые ордера) прекращает наращивать прибыль и замораживает её до окончания данного цикла,путем закрытия руками или общей фиксацией,куда бы рыночная цена не пошла. Замечу, что обычное закрытие ордера не подходит ! Просто требуется манипуляция с балансом и чтобы не менялся как при локировании,но локи есть локи,как лишние ордера.

Если такой код существует,пожалуйста подскажите название функции или укажите где его найти.
 
paragon67:
Привет! Прошу подсказки здесь,так как в другом месте толком ответить не могут. Меня интересует вопрос: можно ли заменить функцию локирования без использования встречных ордеров? То есть через заданное количество пунктов в шаге или в валюте,ордер или цепочка ордеров (преимущественно стоповые ордера) прекращает наращивать прибыль и замораживает её до окончания данного цикла,путем закрытия руками или общей фиксацией,куда бы рыночная цена не пошла. Замечу, что обычное закрытие ордера не подходит ! Просто требуется манипуляция с балансом и чтобы не менялся как при локировании,но локи есть локи,как лишние ордера.

Если такой код существует,пожалуйста подскажите название функции или укажите где его найти.
 надо делать самому и если бысть честным я понятия не имею как размазать ордера. Сейчас делаю что - то подобное но это надолго.
 
Artyom Trishkin:
А вы что-то в таймере собираетесь рассчитывать? Вряд ли.

А вот то, что вам нужны цены OHLC - это вас должно натолкнуть на правильный вариант OnCalculate() из двух.

Шаблон создал.  Куда дальше двигаться? 

Надо научить рисовать его линию )  

 
Andrey Koldorkin:

Шаблон создал.  Куда дальше двигаться? 

Надо научить рисовать его линию )  

Ну так ... показывайте шаблон. А то как же ж знать чего там у вас?
 

Подскажите, пожалуйста, решение проблемы округления!

Необходимо избавить число от запятой без остатка - округление и возведение в степень не решают всей проблемы - как быть?

К примеру было 1,44430 а надо 144430.

Часть кода - как есть

NormalizeDouble(Low[1],Digits)*MathPow(10,(Digits+1)*1-1)

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