Мт4 Конец поддержке. - страница 38

 
Galina Bobro:

что странного? Глупая это затея - объяснять человеку который будет еще на 10-20 страниц доказывать обратное. Ваш же стиль программирования идеальный и критике не подлежит. 

Да критикуйте по делу.
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Мт4 Конец поддержке.

Nikolai Semko, 2017.09.12 02:02

Тем более работать начинает твой алгоритм с приходом нового бара текущего ТФ, и если запустить на дневке,  то можно прождать  весь день,  пока заработает
Это моя недоработка. А по теме "замусоренности кода", - этого нет. Можно потом перенести цикл заполения массива в отдельную функцию, но на данном этапе это неактуально. Зачем же придираться?
 

Попробую попонятнее сказать: 

1) если код не работает - проблема автора и только автора, никто в этом кроме автора не виноват. Судя по сообщениях, то вы сами не уверены что он работает т.е. толком не поверяли. 

2) русские названия - как минимум это неудобно (ну ладно, тут можно закрыть глаза) и это может не везде работать, как в данном случае в отладчике и еще будет жесть если в системе не окажется русского языка. Не говорите что вам не нужен отладчик пока не попробуете и не узнаете что это.

3) В коде не должно ничего повторяться  - это очень плохой стиль программирования. Вы будете каждый символ исправлять вручную? А если не окажется в терминале "EURUSD", а будет "EURUSDf" или вообще это ФОРТС, акции какие-то ? Если что-то более двух раз пишется - должна быть функция которая это делает

 if(Новый_бар && Этот_символ == "EURUSD" && Этот_таймфрейм == PERIOD_M5)
         {
          Print("M5");
         }
       //---------------------------------- 
       if(Новый_бар && Этот_символ == "EURUSD" && Этот_таймфрейм == PERIOD_M1)
         {
          Print("M1"); }

4) Вы просто взяли огромный кусок под все ТФ и символы с обзора... Зачем выделать память под символы которые могут быть никогда не запрошены? А если пользователю нужно символ не с обзора рынка?

5) кстати, причем ЕвроБакс не поняла - вы будете так все символы вручную набивать? Тогда тут плохие новости - символов много, а вы, надеюсь, хотите стать программистом, а не "оператором набора"

-----

Можно еще порыться в коде, список может быть долгим, но вам бы хоть это понять - уже будет код намного лучше.  

 
Реter Konow:
Вы тут большой специалист. Оцените мое решение с точки зрения правильности и экономии ресурсов. Вы же разобрались в его сути. Почему молчите?

У вас в принципе подход неверный. Да и зачем спрашиваете, вам же пофик.

 

Ноги растут отсюда, из вот этого убеждения :

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Мт4 Конец поддержке.

Реter Konow, 2017.09.09 23:20

Некорректная аналогия. Это мир трейдинга, а люди которые сюда приходят, - по большому счету авантюристы, а не будущие ученые и инженеры. Их задача - попытать счастья и быстро заработать много денег. Конечно, для таких серьезных людей как мы все здесь вместе с вами, это не серьезно, - но для них смысл приложения усилий только в этом.

Их исходная мозговая мощность невелика, и навороты ООП явно отбивают у них мотивацию к активному вливанию в нашу экосистему. Они бы хотели быстро и просто проверить свои идеи, а им на голову сваливают такой груз, что они не могут не испугатся и подумать, "а нафига мне это надо?..."

Конечно, это очень образное и карикатурное представление положения вещей, но суть все равно одна.


Вот и не хочет он никого и ничего слушать и слышать, потому что... а объяснение в этом же пассаже.

 
Galina Bobro:

Попробую попонятнее сказать: 

1) если код не работает - проблема автора и только автора, никто в этом кроме автора не виноват. Судя по сообщениях, то вы сами не уверены что он работает т.е. толком не поверяли. 

2) русские названия - как минимум это неудобно (ну ладно, тут можно закрыть глаза) и это может не везде работать, как в данном случае в отладчике и еще будет жесть если в системе не окажется русского языка. Не говорите что вам не нужен отладчик пока не попробуете и не узнаете что это.

3) В коде не должно ничего повторяться  - это очень плохой стиль программирования. Вы будете каждый символ исправлять вручную? А если не окажется в терминале "EURUSD", а будет "EURUSDf" или вообще это ФОРТС, акции какие-то ? Если что-то более двух раз пишется - должна быть функция которая это делает

4) Вы просто взяли огромный кусок под все ТФ и символы с обзора... Зачем выделать память под символы которые могут быть никогда не запрошены? А если пользователю нужно символ не с обзора рынка?

5) кстати, причем ЕвроБакс не поняла - вы будете так все символы вручную набивать? Тогда тут плохие новости - символов много, а вы, надеюсь, хотите стать программистом, а не "оператором набора"

-----


Ну наконец то критика по делу.

1. Конечно, никто не спорит. Моя проверка была поверхностна. Однако, я сейчас не выполняю чей то заказ, а просто опровергаю точку зрения, что подобную задачу нельзя эффективно решить без ООП. Помните? - все с этого началось. 

2. Удобно или неудобно, нужен отладчик, не нужен - дело совершенно субъективное и личное. Это опять же не относится к теме. Тема - доказать и показать как можно справлятся без ООП и делать не менее эффективные решения.

3. Здесь я предлагаю один из вариантов решения задачи фиксации события нового бара для десятков символов и таймфреймов с минимальной нагрузкой на систему. Именно с минимальной. И ради этого заставляю весь будущий торговый функционал под подстраиваться под это решение. Если экономия ресурсов не в приоритете, - можно использовать другое решение.

4. См. пункт 3.

5. Это просто пример, можно писать торговые функции по своему. Это дело трейдера.

 
Реter Konow:

Ну наконец то критика по делу.

1. Конечно, никто не спорит. Моя проверка была поверхностна. Однако, я сейчас не выполняю чей то заказ, а просто опровергаю точку зрения, что подобную задачу нельзя эффективно решить без ООП. Помните? - все с этого началось. 

2. Удобно или неудобно, нужен отладчик, не нужен - дело совершенно субъективное и личное. Это опять же не относится к теме. Тема - доказать и показать как можно справлятся без ООП и делать не менее эффективные решения.

3. Здесь я предлагаю один из вариантов решения задачи фиксации события нового бара для десятков символов и таймфреймов с минимальной нагрузкой на систему. Именно с минимальной. И ради этого заставляю весь будущий торговый функционал под подстраиваться под это решение. Если экономия ресурсов не в приоритете, - можно использовать другое решение.

4. См. пункт 3.

5. Это просто пример, можно писать торговые функции по своему. Это дело трейдера.


1) код не работает - вы о чем? какое ООП?

2) Ну расскажите как вам нравится "трамвай" сравнительно с "мерседесом". Мне как-то без разницы что вам нравится. чисто дело вкуса

3) У вас максимальная нагрузка на память и систему, более макс нужно еще подумать как написать. За это вам и писала, но кажется вам это не нужно.

4) см п 3

5) да, пусть трейдер код подправит. Там где-то была тема о знаниях проги для трейдера - пусть учит гад. 

----

думаю что и требовалось доказать - бессмысленно вам что-то говорить. Засуну ка я свое дилетантское мнение, куда мне до вас - пойду на фрилансе заказ доделаю лучше. 

 

Моя исходная задача: Показать эффективные решения без использования ООП.


Суть моего решения: - формирование глобального массива флагов событий новых баров всех символов и таймфреймов один раз в минуту.

Преимущества:

1. Автоматическое заполнение массива и автоматическое очищение.

2. Отсутствие нагрузки на систему.

3. Прямой доступ к массиву из любой функции и сохранение флага события до очищения массива.

 
Реter Konow:

Моя исходная задача: Показать эффективные решения без использования ООП.


Суть моего решения: - формирование глобального массива флагов событий новых баров всех символов и таймфреймов один раз в минуту.

Преимущества:

1. Автоматическое заполнение массива и автоматическое очищение.

2. Отсутствие нагрузки на систему.

3. Прямой доступ к массиву из любой функции и сохранение флага события до очищения массива.

Какой,  нафиг,  раз в минуту.  Ты что,  совсем не выезжаешь  как бар формируется! 
Сплю,  у меня 4.41 утра. 
 
Реter Konow:
 

Преимущества:

3. Прямой доступ к массиву из любой функции и сохранение флага события до очищения массива.

Спорно, что это преимущество.

Случайно кто-то будет изменять флаг - и это повлияет на поведение ТС.

Причина обращения: