Написал серию индикаторов по свечному анализу (7шт,связаных между собою и с экспертом).Видять все модели и генерируют торговые приказы.Тестирую в течении месяца на всех валютных парах.За это время,на W1 и D1 графиках,все приказы на вход в рынок показывают отличный результат(для торговых приказов отобрал на мой взгляд самые можные свечные модели).
Проблема в том,что на данном этапе,не могу использовать данную систему в режиме online(тормозит платформа,приходиться накидывать индюков на каждую пару по отдельности в ручном режиме при помощи шаблонов) и из за этого вижу сигнал на вход в рынок достаточно позновато.(платформа начинает тормозить даже если накинуть индюков на одну вал.пару,я работаю по всем кроме восточной европы)
Подскажите пожалуйста,можно ли что то зделать для оптимизации и имеет ли смысл покупать более мощьный комп.
Мой комп.
Нужно оптимизировать индикаторы и советник. Имхо конечно.
Да чего там - имхо. Код не оптимален, очевидно (имхо))). Не могу себе представить, чтобы какой угодно свечной анализ по своей природе мог тормозить комп. Это же... я даже не знаю что... не автооптимизация на каждом тике (хотя, одно другого не исключает))).
Короче, комп с "абалденным" запасом для работы советника (не для оптимизаций), а вот код... код смотреть нужно. Так сложно что-то сказать.
// для работы подавляющего большинства советников годится самый слабый нетбук - главное, чтоб его начинка Windows запустить позволила, а частоты камня, частоты и задержки памяти и пр. - неважно.
//HHHHHHHHHHHHHHHHHHHHHHHHHHHH Брошеный младенец на вершине.(дожи белый) HHHHHHHHHHННННННHHHHHHHHHHHHH 1 /* Д | =1= --------------> | <--------------------------------------- разрыв тенями Б разрыв тенями -------> | | <------------------------------ === === | | |0| |2|-------------| |----------------------------------- close 0 < середины 2 | | === <-- сигнал === | Ч Б Брошеный младенец на вершине.Очень редкий сигнал!!!(дожи белый) */ // 2я белая 0я чёрная h4 ------------------------- 0 if(Open_2_h4 < Close_2_h4 && Open_0_h4 > Close_0_h4) {// 1я дожи белый if(Open_1_h4 < Close_1_h4 && WhiteTelo_1_h4 <= doji_h4) { // 1я в отрыве от 2 и 0 тенями if(Low_1_h4 > High_2_h4 && Low_1_h4 > High_0_h4) { if(Close_0_h4 < (Open_2_h4 +WhiteTelo_2_h4/2)-doji_h4) { ObjectSetText("h4_coment","H4 Брошеный младенец на вершине от "+DoubleToStr(Open_2_h4 +WhiteTelo_2_h4/2,Digits),10,"Arial",Red); GlobalVariableSet("Брош_млад_на_вершине_б_h4_"+Symbol(),-2); ObjectSet("Брош_млад_на_вершине_б_h4_"+Symbol(),OBJPROP_PRICE1,Open_2_h4 +WhiteTelo_2_h4/2); ObjectSet("Брош_млад_на_вершине_б_h4_"+Symbol(),OBJPROP_COLOR,Red); } } } } else{ GlobalVariableDel("Брош_млад_на_вершине_б_h4_"+Symbol()); ObjectDelete("Брош_млад_на_вершине_б_h4_"+Symbol()); } //--------------------------------------------------------------------------------------------------------------------------------------------+ // 2я белая 0я чёрная d1 ------------------------- 0 if(Open_2_d1 < Close_2_d1 && Open_0_d1 > Close_0_d1) {// 1я дожи белый if(Open_1_d1 < Close_1_d1 && WhiteTelo_1_d1 <= doji_d1) { // 1я в отрыве от 2 и 0 тенями if(Low_1_d1 > High_2_d1 && Low_1_d1 > High_0_d1) { if(Close_0_d1 < (Open_2_d1 +WhiteTelo_2_d1/2)-doji_d1) { ObjectSetText("d1_coment","D1 Брошеный младенец на вершине от "+DoubleToStr(Open_2_d1 +WhiteTelo_2_d1/2,Digits),10,"Arial",Red); GlobalVariableSet("Брош_млад_на_вершине_б_d1_"+Symbol(),-2); ObjectSet("Брош_млад_на_вершине_б_d1_"+Symbol(),OBJPROP_PRICE1,Open_2_d1 +WhiteTelo_2_d1/2); ObjectSet("Брош_млад_на_вершине_б_d1_"+Symbol(),OBJPROP_COLOR,Red); } } } } else{ GlobalVariableDel("Брош_млад_на_вершине_б_d1_"+Symbol()); ObjectDelete("Брош_млад_на_вершине_б_d1_"+Symbol()); }
Из приведенного кода на вскидку:
1. Графические объекты - на порядки замедляют работу. GV тоже медленны.
2. Лог. операции, вложенные if (&&) - где возможно (возможно - видно), убрать вложенность.
НО!!! Дело явно не в этом!!! Это все так - мелочи.
Из фрагмента непонятно, как у вас организован просчет истории. Как советник обращается к вашим индикаторам или м.б. есть вызовы индикаторов из индикаторов.
Скорее всего, дело именно там - в лишних пересчетах на тиках. Т.е. пришел новый тик - весь индюк пересчитывается заново. В учебнике оптимизация алгоритма для этого случая рассмотрена.
В тупую, без серьезных переделок, поможет простое ограничение расчетной истории. Но, поскольку непонятно, как это у вас сделано, с конкретными предложениями напряг.)))
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Написал серию индикаторов по свечному анализу (7шт,связаных между собою и с экспертом).Видять все модели и генерируют торговые приказы.Тестирую в течении месяца на всех валютных парах.За это время,на W1 и D1 графиках,все приказы на вход в рынок показывают отличный результат(для торговых приказов отобрал на мой взгляд самые можные свечные модели).
Проблема в том,что на данном этапе,не могу использовать данную систему в режиме online(тормозит платформа,приходиться накидывать индюков на каждую пару по отдельности в ручном режиме при помощи шаблонов) и из за этого вижу сигнал на вход в рынок достаточно позновато.(платформа начинает тормозить даже если накинуть индюков на одну вал.пару,я работаю по всем кроме восточной европы)
Подскажите пожалуйста,можно ли что то зделать для оптимизации и имеет ли смысл покупать более мощьный комп.
Мой комп.