[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 501
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не люблю копаться в левых кодах, но сразу бросилось в глаза, зачем в функциях после double стоит & (!). Это и даёт ошибки!
Ну так всё логично. Это значит передача параметров по ссылкам.
Чтобы не расписывать код я объясню кратко.
Есть 3 ф-ции:(int GetCrossingMa, int GetStochSignal и int GetSignal())
В ф-ции int GetSignal() получаются значения машек и других индикаторов, которые передаются по ссылкам неосновным ф-циями (int GetCrossingMa и int GetStochSignal) для получения в них соответствующих сигналов. Это я хочу сделать, чтобы не получать те же данные в разных ф-циях. Ту же машки вычислятьв 2 или более ф-циях по-моему не разумно. Проще раз просчитал и всё. Зачем тратить на это дополнительные ресурсы?
Ну так всё логично. Это значит передача параметров по ссылкам.
Чтобы не расписывать код я объясню кратко.
Есть 3 ф-ции:(int GetCrossingMa, int GetStochSignal и int GetSignal())
В ф-ции int GetSignal() получаются значения машек и других индикаторов, которые передаются по ссылкам неосновным ф-циями (int GetCrossingMa и int GetStochSignal) для получения в них соответствующих сигналов. Это я хочу сделать, чтобы не получать те же данные в разных ф-циях. Ту же машки вычислятьв 2 или более ф-циях по-моему не разумно. Проще раз просчитал и всё. Зачем тратить на это дополнительные ресурсы?
Вы программировали на отличном от мкл4 языка?
Вот мой тестовый учебный сырец-сова:
ф-ция int GetCrossingMa(double& i_maFast1, double& i_maFast2, double& i_maSlow1, double& i_maSlow2) получает сигнал пересечения.
Ф-ция int GetStochSignal(double& stochD1, double& stochD2, double& stochK1, double& stochK2) получает сигнал от стохастика.
Ф-ция void GetMomentumSignal() получает значение моментума.
Ф-ция int GetSignal() будет получать общий сигнал исходя из предыдущих 3 функций и не только их.. Вопрос такой. Поскольку ф-ция int GetSignal() самая главная так сказать и в ней получается основной синал я получаю все значения машек(i_maFast1,i_maFast2,i_maSlow1 и i_maSlow2) и значения значения стохастиков(stochD1,stochD2,stochK1,stochK2)
Правильно ли я сделал с точки зрения оптимизации кода?
Есс-но все параметры полученные в ф-ции GetSignal() передаются по ссылкам в соответствующие ф-ции.
Но вот этом участке
при компиляции выскакивает ошибка:
Таким может быть вариант поиска сигнала на нужном нам баре:
А в последней функции GetSignal() Вы производите "складывание" всех сигналов (самостоятельно).
P.S. В получении сигнала от индикатора есть "тонкий" момент. Например, можно фиксировать факт нахождения maSlow над\под maFast, а можно "ловить" момент их пересечения. Подход и код разный.
Вы программировали на отличном от мкл4 языка?
Ну так всё логично. Это значит передача параметров по ссылкам.
Чтобы не расписывать код я объясню кратко.
Есть 3 ф-ции:(int GetCrossingMa, int GetStochSignal и int GetSignal())
В ф-ции int GetSignal() получаются значения машек и других индикаторов, которые передаются по ссылкам неосновным ф-циями (int GetCrossingMa и int GetStochSignal) для получения в них соответствующих сигналов. Это я хочу сделать, чтобы не получать те же данные в разных ф-циях. Ту же машки вычислятьв 2 или более ф-циях по-моему не разумно. Проще раз просчитал и всё. Зачем тратить на это дополнительные ресурсы?
Объяснения понятны, а вот действия по ним нет.
Вот эти: "В ф-ции int GetSignal() получаются значения машек и других индикаторов" действия в Вашем варианте мягко говоря "сомнительны", потому, что лишены необходимости таких действий.
Этот код:
полный П.... Вы осознаёте, что здесь "происходит"??? - бесполезно перебирается ВЕСЬ "барный ряд", а по окончании цикла в переменных остаются значения... дальше догадайтесь сами.
Чуток на перл и пхп чуток. Но серьёзно не подходил к другим языкам т.к. не было необходимости. Это имеет значение?
Да. Имеет. В таком случае убираете все (т.е. никаких не должно быть) "по-моему" и тем более - "не разумно".
Делаете - как НАДО! Включая "трату на это дополнительных ресурсов".
По мимо учебника и доки внимательно читайте БАЗУ и АЗБУКУ - там всё это разобрано по полочкам!
Объяснения понятны, а вот действия по ним нет.
Вот эти: "В ф-ции int GetSignal() получаются значения машек и других индикаторов" действия в Вашем варианте мягко говоря "сомнительны", потому, что лишены необходимости таких действий.
Этот код:
полный П.... Вы осознаёте, что здесь "происходит"??? - бесполезно перебирается ВЕСЬ "барный ряд", а по окончании цикла в переменных остаются значения... дальше догадайтесь сами.
Конечно, осознаю. Находятся значения машки быстрой и медленной и стохастика сигнальной линии в каждый момент времени на закрытии каждого бара на определённом ТФ. А потом высисляется место их пересечения. Что тут не логичного то?
Да. Имеет. В таком случае убираете все (т.е. никаких не должно быть) "по-моему" и тем более - "не разумно".
Делаете - как НАДО! Включая "трату на это дополнительных ресурсов".
По мимо учебника и доки внимательно читайте БАЗУ и АЗБУКУ - там всё это разобрано по полочкам!
Так читаю же, и читал.
А что ты имеешь ввиду под "В таком случае убираете все (т.е. никаких не должно быть)" ? Что всё убирать?
Так читаю же, и читал.
А что ты имеешь ввиду под "В таком случае убираете все (т.е. никаких не должно быть)" ? Что всё убирать?
" Это я хочу сделать, чтобы не получать те же данные в разных ф-циях. Ту же машки вычислятьв 2 или более ф-циях по-моему не разумно. Проще раз просчитал и всё. Зачем тратить на это дополнительные ресурсы?"
Делай, как прописано в документации и не надо изобретать велосипед.
Причём здесь вообще этот цикл???:
пройди сам по шагам, что будет в итоге по выходе из него и что ты с этим делаешь дальше? Бред полный.
Делай, как в учебнике - все торговые сигналы в этой ф-ии определения сработки торговых критериев - последовательно (можешь завернуть разные сигналы в разные ф-ии и уже потом с ними работать при проверке сработки этих торговых критериев), потом уже условия на их сработку.
Здесь читай:
"ПРОГРАММНЫЕ РЕШЕНИЯ
С чего начать новичку?КАК найти цену последнего фрактала?
КАК получить сигнал пересечения двух МА?
КАК проверить пересечение МА с учетом требуемого расхождения?"