Немного удивлен :) Решил поделиться и задать НЕ риторический вопрос. - страница 23
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Ты собираешься одно ( не обязательно кратное 2 число ) делить на другое ( не обязательно кратное 2 число ) через битовый сдвиг?
Ладно кину что у меня есть, а там сам думай нужно или нет.
gcd(2n + 1, 2(n + k) + 1) = gcd(2(n + k) + 1, 2n + 1) = gcd(2n + 1, k)
--
Две лекции создателя STL Александра Степанова в Яндексе
// По теме вычисления НОД - вторая лекция. Но советую посмотреть/послушать обе. Классные лекции, вумный мужчинка, просто приятно. Да и полезно.Если с битовыми сдвигами - давай. Если с делением по модулю, то не надо.
Деление последовательным смещением
интересные цифры к конце статьи:
Данный алгоритм будет выполняться в худшем случае за (n-1)! итераций, где n – разрядность делимого в битах. В итоге, по сравнению с алгоритмом последовательного сложения, данный алгоритм дает выигрыш до 9 раз для 8-битных чисел и до 546 раз для 16-битных.
Значица у меня получилось так:
вроде работает справно. прошу тестить во все дыры.
// подправил, так приятнее.Странно, не шибко быстрее получилось.
2011.04.03 22:56:59 gcdSpeedTest (EURUSD,M20) Common time GreatestCommonDivisor(random(),random()) = 7656ms; // 10000000 calls
2011.04.03 22:56:51 gcdSpeedTest (EURUSD,M20) Common time gcd(random(),random()) = 5234ms; // 10000000 calls
Странно, не шибко быстрее получилось.
2011.04.03 22:56:59 gcdSpeedTest (EURUSD,M20) Common time GreatestCommonDivisor(random(),random()) = 7656ms; // 10000000 calls
2011.04.03 22:56:51 gcdSpeedTest (EURUSD,M20) Common time gcd(random(),random()) = 5234ms; // 10000000 calls
У меня побольше разница. Твой быстрее в 3-4 раза, но не забывай что на С++ разница поубавится раза в 2-2,5, так что ты по честному обогнал в 1,5 раза.
У меня побольше разница. Твой быстрее в 3-4 раза,
но не забывай что на С++ разница поубавится раза в 2-2,5, так что ты по честному обогнал в 1,5 раза.
А посмотрим.
Пока предварительная версия на mql5. Дружно тестим, ищем баги.
Сделал в виде структуры.
Все операции сделал в двух формах - с последующей нормализацией и без. Получилась гибкая конструкция.
Если подозреваешь возможность переполнения - используешь версию с нормализацией, не опасаешься - экономишь время (нормализовать можно и попозже, когда накопится пена).
В архиве простенький тест есть, но желательно пожёстче потестить.
спс хоть признались - Вы смайлы режете, но кто целые посты удаляет?
по сабжу, Academic, то, что у Вас есть так называемая "считалка" - это отлично, хотелось бы уточнить, а есть у Вас возможность автоматической оптимизации в ходе торговли?
Специально для этой темы опубликовал последние результаты МТ5 тестера (любой сможет повторить тесты после очередного обновления).
Вот что может делать тестер МетаТрейдер 5, да еще и с полной инфраструктурной выкладкой (отчеты, графики, результаты, визуализация).
Специально для этой темы опубликовал последние результаты МТ5 тестера (любой сможет повторить тесты после очередного обновления).
Вот что может делать тестер МетаТрейдер 5, да еще и с полной инфраструктурной выкладкой (отчеты, графики, результаты, визуализация).
7 символов, все тики, с 2000 года, два параметра ( вариантов 200 * 200 )- 40000 проходов, с сотней ордеров в день по каждому символу.
Сколько занимает времени?
берем 10 лет - 356 * 10 * 100 * 7 = 25 000 000 сделок
берем примерно 10 тиков в минуту
и 10 лет - 365 * 10 * 1440 *10 = 52 000 000 тиков на одном символе. А если по честному то тики они на каждом символе тикают. То есть надо по честному умножить еще на 7. Да и не по 10 тиков в минуту. А бывает и 300.
Сколько времени занимает?