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

 
Можно ли загружать графики для тех.анализа,в МТ-4 - индексов S&P 500 Futures Chart , TA 25 Chart, и S&P 500 Chart если это возможно может подскажете как это сделать,может есть объяснение как загружать!
 

Может кто подскажет ,устанавливаю плагин GetTickerHistory в МТ-4,запускается,но загрузка не идёт,возможно ли загрузить внешние индексы другим способом.

Заранее благодарен.
 
Подскажите как реализовать идею. На каждои тике открываем два ордера бай и селл, если (для бай) в рынке нет ордеров по текущей цене аск. Для сел тоже самое но с бид. заранее благодарю.
 

Вопрос по OrderSelect(i, SELECT_BY_POS, MODE_TRADES)

Правильно ли я понимаю, что в таком режиме выбора/перебора ордеров их порядок не гарантирован? Т.е. например после перезапуска терминала или другого "катаклизма" цикл перебора всех ордеров может выдать их в другой последовательности?

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

Вобщем, хотелось бы поточнее узнать все нюансы выборки ордеров в режиме  SELECT_BY_POS...

 
TarasBY:

Есть непонятки с прибавлением 0, но пробуйте так:


Ноли как-то давно посоветовали здесь на форуме, к i прибавлять индекс.

 

Сделал, все как сказали. Не получается отрисовать после отсчета. Зеленая и красная точка идут вместе.

Необходимо зафиксировать к примеру, когда  "line1 > 0." и после определенного количества баров при условии, что на всех барах  "line1 > 0." делать отрисовку.

В советнике получилось сделать, а в индикаторе что-то никак.

1 

 
Forexman77:

Ноли как-то давно посоветовали здесь на форуме, к i прибавлять индекс.

 

Сделал, все как сказали. Не получается отрисовать после отсчета. Зеленая и красная точка идут вместе.

Необходимо зафиксировать к примеру, когда  "line1 > 0." и после определенного количества баров при условии, что на всех барах  "line1 > 0." делать отрисовку.

В советнике получилось сделать, а в индикаторе что-то никак.

Я подправил явную ошибку: добавление ко времени индекса бара. Всё остальное авторский "полёт фантазии" - экспериментируйте.
 
TarasBY:
Я подправил явную ошибку: добавление ко времени индекса бара. Всё остальное авторский "полёт фантазии" - экспериментируйте.

Провел себе мозговой штурм) И нашел решение:

 for(i=limit1;i>=0;i--) 
   {
   line1=0.;
   signal_line=0.;
   line1=iCustom(NULL,0,"indikator1",Period_MA_r,r2,1,i+0);
   signal_line=iCustom(NULL,0,"indikator2",Period_MA_1,p2,0,i+0);
   if (line1 == 0){shift=0;}//если индикатор равен нолю, то время сбрасывается на ноль
   if (line1 > 0.){shift=shift+1;}//на каждом баре плюс один
   if (line1 > 0 && signal_line < s)ExtMapBuffer1[i] = Low[i] - 95.*Point;
   if (line1 > 0 && shift >= shet && signal_line < s)ExtMapBuffer2[i] = High[i] + 95.*Point;
   }
 
genino:
Подскажите как реализовать идею. На каждои тике открываем два ордера бай и селл, если (для бай) в рынке нет ордеров по текущей цене аск. Для сел тоже самое но с бид. заранее благодарю.

проверяешь наличие открытых ордеров.Потом их свойства перебираешь: тип ордера и по какой цене открыт.Далее отправляешь запрос на открытие ордера или нет. Всё просто,в чём запутался?)
 
AlexPORT:

Вопрос по OrderSelect(i, SELECT_BY_POS, MODE_TRADES)

Правильно ли я понимаю, что в таком режиме выбора/перебора ордеров их порядок не гарантирован? Т.е. например после перезапуска терминала или другого "катаклизма" цикл перебора всех ордеров может выдать их в другой последовательности?

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

Вобщем, хотелось бы поточнее узнать все нюансы выборки ордеров в режиме  SELECT_BY_POS...


Я тоже пытался обсудить данный вопрос на этом форуме около года назад. То, что Вам не отвечают, говорит о том, что ситуация не сильно изменилась с тех пор. Мы, пользователи, сами не знаем как это в точности происходит. А пояснений от МетаКвотов на этот счет я тоже не нашел. Есть вариант обратиться напрямую к разработчику, если есть желание и возможность на это потратить силы и время.

Лично по моим наблюдениям тут вопрос обстоит следующим образом (но это наблюдения, а не официально документированная особенность - за официальным - это МетаКвотс должны объявить). Когда у Вас загружен терминал Вы, как пользователь, имеете возможность выставлять фильтры сортировки: по тикету, цене открытия, типу ордера и т.д... Для этого достаточно кликнуть мышкой на заголовке соответствующей колонки. И в зависимости от этого и будет меняться порядок сортировки. Когда ордера открываются в процессе торговли, то они записываются по мере их выставления, отмены, и закрытия. При перезагрузке терминала, разумеется, все это считывается и сортируется в зависимости от настроек по умолчанию (вроде по тикету). И т.д. и т.д... Я не буду перечислять все возможные варианты сортировки, пытливый ум может сам их достроить. Здесь мораль сказанного другая (такая): Чтобы правильно управляться с последовательностью отбора и выборки ордеров, нужно прежде самостоятельно делать необходимую сортировку. Для этого нужно применять соответствующие алгоритмы сортировки. Если ордеров мало, то практически любой алгоритм подойдет. А, вот, если много... это уже специализированная "песня". Тут нужно хорошо разбираться в этих алгоритмах. Иначе может случится так, что сортировка будет очень значительной по времени.

В кодабазе где-то был алгоритм сортировки. Вроде пузырьковый. Я не смог им научиться пользоваться - каюсь.

Вот, что-то из этой серии: https://www.mql5.com/ru/code/9336

Итог: Вы правы - порядок перебора ордеров не гарантирован. Для гарантированного результата, нужно делать отбор и сортировку исходя из задач вашей программы.

 
igalx:
Можно ли загружать графики для тех.анализа,в МТ-4 - индексов S&P 500 Futures Chart , TA 25 Chart, и S&P 500 Chart если это возможно может подскажете как это сделать,может есть объяснение как загружать!

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

Но, если вы подразумеваете сервис, то почему бы в этом сервисе теханализ и не делать. А в мт4 вы можете воспользоваться котировками из терминала, если ваш брокер их предоставляет. Если нет, то загрузите терминал любого из популярных ДЦ, там точно будет все то, что вам необходимо. И даже более того.