Ответить
27.12.2013, 08:12
Аватар для AlexeyVik
AlexeyVik AlexeyVik на форуме Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,625
Поблагодарили 3,758 раз(а) / Репутация: 3750
Не чтобы тоже митинг сделать,
Опять майдан... Опять революция...
27.12.2013, 09:11
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Опять майдан... Опять революция...
Майдан, болотная... Собраться толпой, поорать и потолкаться. Что ещё нужно для полного счастья? Разве что OrdersTotal(magic,OP_BUY)

С чего єто вдруг? Если просто OrdersTotal() пустой значит считаем все ордера как и раньше. Если OrdersTotal(magic) то считает все ордера по меджику. Если OrdersTotal(magic,OP_BUY) считает ордера с меджиком по типу. Что тут сложного или невозможного??
Всё написать можно. Конечно. Так вообще давай пару функций оставим и из них будем складывать. Ну чтобы не скучно было и по тяжелее. Складывается впечетление что ты консерватор. Если работает, то апгрейд не надо. Если бы так было то сейчас так бы и был каменный век.

И ещё одно. Немного обидно. Не чтобы тоже митинг сделать, метаок обозвать(страницы индексируются) чтобы привлечь внимание. И подтвердить, что да надо хоть по чём то сделать сортировку ордеров для начала. Так нет, всё наоборот. Они правы потому что так надо.
Лично мне такая функция не нужна. Если тебе нужна, то у тебя есть 2 выхода. Несколько лет воевать с метаквотами что бы они добавили, или за несколько минут написать свою функцию. Я пишу свои функции, так проще и несколько быстрее.
Воевал с метаквотами по поводу ограничения количества тиков при тестировании, только потому что никакими пользовательскими функциями это решить не получалось. Приходилось юзать стороннее ПО.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
27.12.2013, 09:13
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,062
Поблагодарили 892 раз(а) / Репутация: 878
Цитата:
Воевал с метаквотами по поводу ограничения количества тиков при тестировании
Ну и типа, они проблему решили?
А это что тогда:
Код:
2013.12.27 13:39:43	TestGenerator: unmatched data error (volume limit 645 at 2013.11.27 09:15 exceeded)
27.12.2013, 09:17
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,034 раз(а) / Репутация: 9034
  • Отправить сообщение для eevviill с помощью Skype™
А если у меня нету отложек в советнике, то я смело могу OrdersTotal()-1 использовать как последний ордер?
27.12.2013, 09:21
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Ну и типа, они проблему решили?
А это что тогда:
Код:
2013.12.27 13:39:43    TestGenerator: unmatched data error (volume limit 645 at 2013.11.27 09:15 exceeded)
Да, решили. А то что ты привёл, это не ограничение тиков, а кривые котировки. Это скорее косяк ДЦ, а не метаквотов.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
27.12.2013, 09:22
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
А если у меня нету отложек в советнике, то я смело могу OrdersTotal()-1 использовать как последний ордер?
Да. Но только если нет ордеров ненужного символа и маджика. Например в тестере.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
27.12.2013, 09:29
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,062
Поблагодарили 892 раз(а) / Репутация: 878
Да, решили. А то что ты привёл, это не ограничение тиков, а кривые котировки. Это скорее косяк ДЦ, а не метаквотов.
А в чем конкретно кривость? Ну или как с этим бороться? Не в данном случае конкретно, а в общем?
27.12.2013, 09:52
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
А в чем конкретно кривость? Ну или как с этим бороться? Не в данном случае конкретно, а в общем?
При тестировании на всех тиках, для максимальной точности, тестер использует самый младший тайм фрейм из доступных, для моделирования движения цены. А внутри бара этого самого младшего, моделирует движение цены в зависимости от его формы.
Например я зпускаю тест на H1. Тестер пытается использовать М1, там где нет истории M1, пытается использовать М5... Внутри младшего бара моделирует.
Так вот перед тестом, тестер проверяет насколько совпадают младшие котировки с заданным мной.
Например на моём Н1 цена закрытия бара должна совпасть с ценой закрытия последнего бара младшего тайм фрейма входящего в бар старшего. Если не совпадает Выдаёт ошибку. То же со всеми другими параметрами бара заданного тайм фрейма.
Конкретно приведённая тобой ошибка говорит что сумма объёмов баров младшего таймфрейма не соответствует объёму бара старшего, в который вошли эти младшие.
Запутано написал. Попробую так. В бар H1 входит 60 баров М1. Сумма объёмов этих младших баров должна быть равна объёму старшего H1. Если не совпадает, выдаётся такая ошибка. Эта ошибка может говорить о кривых котировках или о дыре в них.
Идеальные котировки будут если скачать М1, а остальные тайм фреймы пересчитать из М1. Тогда точно будет всё совпадать. В реальности идеальных котировок не существует.
Это всё конечно для модели "все тики".
На модели "по ценам открытия" таких ошибок не будет, так как используется история только заданного тайм фрейма. Но для этого теста советник должен работать по ценам открытия.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
27.12.2013, 10:02
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,062
Поблагодарили 892 раз(а) / Репутация: 878
Ugar
Я понял. На тестируемом участке М1 существует, если оно "моделирует" верхний ТФ(М15 у меня), то какое ему дело до того, что там с кем совпадает? Зачем ему еще и М5 и М15 - до кучи? Какое-то подозрительное моделирование
И если я вызываю индюк с М1 или Н1, то будет работать в тестере или будет только М1, а Н1 нет?
27.12.2013, 10:10
Аватар для AlexeyVik
AlexeyVik AlexeyVik на форуме Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,625
Поблагодарили 3,758 раз(а) / Репутация: 3750
А если у меня нету отложек в советнике, то я смело могу OrdersTotal()-1 использовать как последний ордер?
Я не понимаю почему не хочешь объявит на глобальном уровне 2е переменные int TicketBuy, TicketSell; и при открытии ордера
TicketBuy = OrderSend( открываем бай );
TicketSell = OrderSend( открываем сел);
И пока не откроешь новый ордер последним по типу будет тот который в переменной. Его по тикету можешь выбрать, прочесть время открытия и не закрыт-ли он.
Василий, ты сам себе создаёшь трудности и обвиняешь в этих трудностях MQ.
27.12.2013, 11:05
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Ugar
Я понял. На тестируемом участке М1 существует, если оно "моделирует" верхний ТФ(М15 у меня), то какое ему дело до того, что там с кем совпадает? Зачем ему еще и М5 и М15 - до кучи? Какое-то подозрительное моделирование
Допустим нужен М15. Смотрим на бар, но не известно же как двигалась цена внутри этого бара. А надо ведь смоделировать до тиков. Как узнать движение цены внутри М15 бара? Да очень просто, нужно посмотреть как расположены бары самого маленького тайм фрейма. Это вроде даже визуально понятно. То есть имея М1 можно точно смоделировать движение цены внутри М15 бара. А вот как двигалась цена внутри М1 бара, по тиково, нигде не зафиксировано. Нет тиковой истории в терминале. Тестеру приходится сочинять тиковое движение цены внутри М1 бара.
Моделирование действительно странное, потому что моделирование.
Было бы гораздо круче, если бы терминал писал тиковую историю. И тестер мог бы не моделировать (сочинять), а работать на реальной тиковой истории. Но, когда был выпущен МТ4, компьютеры были дохленькие и FAT32 на дисках. Тяжёлое детство, деревянные игрушки.
Эти компы просто повисли бы от таких нагрузок. А FAT32 не позволил бы сохранять длинную историю, максимальный размер файла был 2 Gb.
А вот почему в МТ5 тиковой истории нет и тестер всё так же "моделирует", мне не понятно. Компы уже тогда могли переварить работу с реальными тиками. Они в MT5 повторили все недостатки MT4 b ещё добавили своих. А укарашательство, доступное в МТ5 серьёзным трейдерам не надо, это всё фетиш. Им надо чтоб бабло зарабатывалось.
И если я вызываю индюк с М1 или Н1, то будет работать в тестере или будет только М1, а Н1 нет?
Индикатор, на не родном тайм фрейме, работает нормально в тестере только на сформированных барах. Тестер им ничего не моделирует, просто даёт указанные бары указанного тайм фрейма.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
ansol 
27.12.2013, 11:11
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,062
Поблагодарили 892 раз(а) / Репутация: 878
Цитата:
Индикатор, на не родном тайм фрейме, работает нормально в тестере только на сформированных барах.
Что такое "сформированные" бары? Которые в истории есть?
Так ведь в истории есть и бары по другой паре(не той, что тестируемая) - он и их возьмет? o_O
27.12.2013, 11:24
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Что такое "сформированные" бары? Которые в истории есть?
Так ведь в истории есть и бары по другой паре(не той, что тестируемая) - он и их возьмет? o_O
Вообще то в тестере будет работать индикатор с любыми барами любой пары, даже если они не родные.
Но на не сформированном баре (текущий [0]) тестер не моделирует его его изменения в процессе формирования, а берёт целиком бар из истори.
В итоге враки. Это надо учитывать.
Не надо удивляться. Даже если советник в тестере запущен на EURUSD H1, а в нём используется индикатор вкотором указано жёстко USDCHF H4, работать будет. Тестер не сможет работать с ордерами USDCHF, а индикаторы вполне работают. Главное что бы была история для этих индикаторов.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
ansol 
27.12.2013, 11:36
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,062
Поблагодарили 892 раз(а) / Репутация: 878
Ugar
Ну все расписал, спасибо, мне это нужно для понимания результатов тестера и будущих экспериментов
27.12.2013, 12:40
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,034 раз(а) / Репутация: 9034
  • Отправить сообщение для eevviill с помощью Skype™
Я не понимаю почему не хочешь объявит на глобальном уровне 2е переменные int TicketBuy, TicketSell; и при открытии ордера
TicketBuy = OrderSend( открываем бай );
TicketSell = OrderSend( открываем сел);
И пока не откроешь новый ордер последним по типу будет тот который в переменной. Его по тикету можешь выбрать, прочесть время открытия и не закрыт-ли он.
Василий, ты сам себе создаёшь трудности и обвиняешь в этих трудностях MQ.
Я хочу чтобы было проще. Тоесть чтобы была сортировка по времени открытия.
27.12.2013, 12:45
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Ugar
мне это нужно для понимания результатов тестера и будущих экспериментов
Я бы сказал что всем нужно знать инструмент, которым пользуются. Тестер, как и любой другой инструмент, облегчает работу. Но любым инструментом нужно уметь пользоваться, учитывать все ограничения и погрешности. Иначе можно легко себя обмануть красивыми циферками.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
27.12.2013, 13:43
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Я хочу чтобы было проще. Тоесть чтобы была сортировка по времени открытия.
Ты что последнюю в жизни программу пишешь? А может потом сортировка по времени открытия будет не удобна, а удобна будет по тикету. А потом захочется сортировку по какому то другому параметру.
Можно требовать от метаквотов функцию сортировки списка ордеров по указанному параметру в указанном порядке убывания\возрастания.
Может даже они прислушаются и через пару лет добавят эту функцию, а может и нет.
Мне проще решить этот вопрос написав себе необходимую функцию, чем мучить годами метаквотов с неизвестным результатом.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
27.12.2013, 14:43
Аватар для AlexeyVik
AlexeyVik AlexeyVik на форуме Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,625
Поблагодарили 3,758 раз(а) / Репутация: 3750
Да хватит уже Андрей. Хотеть-то не вредно, вредно не хотеть. Да и признаться, что ступил стыдно. Пусть как есть останется.
Ugar 
28.12.2013, 09:33
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,034 раз(а) / Репутация: 9034
  • Отправить сообщение для eevviill с помощью Skype™
Да хватит уже Андрей. Хотеть-то не вредно, вредно не хотеть. Да и признаться, что ступил стыдно. Пусть как есть останется.
Ты что последнюю в жизни программу пишешь? А может потом сортировка по времени открытия будет не удобна, а удобна будет по тикету. А потом захочется сортировку по какому то другому параметру.
Не хотел бы иметь таких друзей, напарников и т.д. как вы.
28.12.2013, 12:56
Аватар для qqmber
qqmber qqmber вне форума Почётный гражданин
Регистрация: 20.01.2013 / Сообщений: 530
Поблагодарили 386 раз(а) / Репутация: 386
Не хотел бы иметь таких друзей, напарников и т.д. как вы.
Что-то у тебя настроение какое-то не праздничное.
Случилось что?
Угар тут рассказывает вещи, которые мало где еще прочитать можно, а ты уперся в свою сортировку и сидишь надутый.
Язык mql, как любой инструмент, должен давать возможность писать решения, а не предлагать готовые на все случаи жизни.
С наступающим!
Q.
Ответить

Метки
mql4, mql4 помощь, вопросы mql4


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 19:07. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO