Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
На одну реплику возвращаюсь к диалогу:
Функция должна работать так как задумали разработчики, а не так как хотят пользователи. Один хочет одно, другой другое, а третий хочет ахинею.
Вот по этой причине вам разработчики не отвечают. А я не адвокатом выступаю, а вам пытаюсь донести простую истину, не грузи других если не можешь сделать сам. Вы-же в ответ включили «ус………ться не поддаться…» и сочиняете мифы о костылях.
На этом действительно ВСЁ¡¡¡ Разработчики вам не ответят… не надейтесь.
Я знаю, что прочтешь, по этому напишу. Функция должна работать как описано в документации и никак иначе. Есть нюансы - пиши их в документации и не будет проблем.
Мне в чем то вас убеждать никакого смысла нет. Простые истины лучше доносите до разработчиков. Я уверен, что Вы никогда не работали в команде программистов - вы типичный самоучка, не имеющий за плечами серьезной базы знаний. А я работал и в дальнейшем руководил серьезными проектами. У нас за общение прописными истинами не подкрепленными опытом и знаниями, просто увольняли. Вы как посредник для общения с разработчиками мне не нужны. Ответ я от них получил еще года два назад - "делайте костыли, у нас все работает". Надеюсь автора фразы уже уволили, т.к. программист не бог и часто ошибается.
У нас была должность тестера - вы даже примерно не представляете, сколько можно нарыть багов в паре страниц кода излишне самоуверенного и неопытного программера.
В вашем примере работает, потому, что условия вызова другие - стартовое время всегда равно началу существующего бара (т.е. тики заведомо есть) и вы читаете всю историю тиков последнего бара разом.
Кстати один из моих костылей работает примерно как у вас. Я тоже получаю сначала время существующих баров , а потом разбиваю их на максимальные непрерывные участки и получаю тики. Но возникает другая проблема - если не хватило принимающего массива для данных, то докачка остального - это пляски с бубнами (о которых и была речь выше).
А работа с динамическими массивами гораздо медленнее и приходится учитывать возможную фрагментацию памяти.
А Вы доки до конца читаете?
Примечание Функция CopyTicksRange() предназначена для запроса тиков из строго указанного диапазона, например, за конкретный день истории.
И все быстро работает с динамическими массивами.
Сравните свой пинг и забудьте про скорость работы с дин. массивами :)
Это не выделенный канал ММВБ
Добавлено
Если Вам нужна скорость, то зачем "сели" на БКС, эти у--ы сознательно ограничивают скорость стандартного логина ФОРТС
с 30 транзакций в сек. до 10 тр. в сек.!
Добавлено
И лучше писать в раздел "Биржевой трейдинг"
На форексе те же ошибки. Брокер Альпари, тестовый счет. Символ EURUSD
Кастомный символ сделан на базе EURUSD, просто название оставил тоже
Если речь идет о работе CopyTicks в Тестере, то я некомпетентен, т.к. никогда в Тестере историю тиков не запрашивал.
Могу говорить только за боевый режим.
А Вы доки до конца читаете?
Да, описание функций я читаю до конца и если есть сомнения, то еще и по форумам пороюсь. Понятие быстро это у всех разное. Динамика по определению работает медленнее, так как идет постоянное перераспределение памяти. Второй минус фрагментация , иногда с динамикой ошибешься и потом памяти не хватает терминал закрыть :)))
Пинг тут не при чем, после первой закачки тики отдаются уже из базы, в теории конечно :) Меня так учили - программу надо ускорять оптимизацией, а не аппаратной базой - это уже на автомате. Да и какая разница, какой коннект - сегодня один, завтра другой - это ж от алгоритма не зависит.
Кроме БКС у меня еще Открытие, Альпари и т.д. везде есть нюансы. У меня задача сейчас обкатка математики на тиках, а не торговля или фриланс.
А работа с динамическими массивами гораздо медленнее и приходится учитывать возможную фрагментацию памяти.
Просьба предоставить замеры по этому утверждению. Вопросам производительности в боевых советниках уделяю большую роль.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Новая версия платформы MetaTrader 5 build 2980: Push-уведомления о торговых операциях
Ilyas, 2021.09.03 10:02
Массив под тики всегда выделяется немного больше чем имеется тиков
Если речь идет о работе CopyTicks в Тестере, то я не компетентен, т.к. никогда в Тестере историю тиков не запрашивал.
Могу говорить только за боевый режим.
я не про Тестер, а про демосчет. Т.к. проверить в Альпари на боевом счету в выходной проблематично.
я не про Тестер, а про демосчет. Т.к. проверить в Альпари на боевом счету в выходной проблематично.
Да, если запросить тики в интервале, где их не было, то выдает не ноль, а за все сутки.
Такое ощущение, что это намеренно сделано. Но не знаю, для чего.
Расследование показало, что проблема возникает, когда From попадает на время после последнего тика торговой недели. По-моему, это баг.
На реальных и кастомных символах ведет себя идентично.
Очевидно, что если запрашивать тики с последнего тика предыдущего запроса, то проблема возникать не будет. Но вот если делать запрос с SymbolInfoTick_time_msc, то баг может проявиться. Поэтому лучше этого не делать пока.
fxsaber #:
Но вот если делать запрос с SymbolInfoTick_time_msc, то баг может проявиться. Поэтому лучше этого не делать пока.
Это уже проверено сколько раз?
Не нравится SymbolInfoTick используйте
from
[in] Дата, начиная с которой запрашиваются тики. Указывается в миллисекундах с 01.01.1970. Если параметр from=0, то отдаются последние count тиков.
Это уже проверено сколько раз?
Не нравится SymbolInfoTick используйте
Спасибо, отлично умею работать с тиками. Это не отменяет наличие бага.
Это уже проверено сколько раз?
Не нравится SymbolInfoTick используйте
это проверено уже два года!
Вот упертый! Почитай, что написали выше - CopyTicks точно также глючит. Если тебе нравится искать способы заставить кривую функцию работать или искать кривые способы обхода, так не мешай - тут не об этом