Заработай до
50000$
на приглашении друзей
получить StartUp Bonus
от ИнстаФорекс
Вложений не требуется!
Начни торговлю
без вложений и риска
С новым STARTUP бонусом 1000$
Получи бонус
55%
от ИнстаФорекс
на каждое пополнение
Ответить в теме

Показаны сообщения: с 1 по 10 из 10

Тема: Библиотеки полезных функций OBZ (Ocean Breeze) на MQL4/MT4

 Перейти в классический вид темы
  1. линк#1
    Частый гость
    AlexBanker стараюсь положительно себя зарекомендовать Аватар для AlexBanker
    Регистрация:
    03.01.2013
    Пол:
    Мужчина
    Сообщений:
    132
    Накопленные выплаты (Подробнее):
    2571 RUB
    Поставил лайков:
    47
    Получено лайков:   26
    в 22 сообщениях
    20%
    ПодписатьсяПодписаться
    Подписано 0
    Библиотеки OBZ (Ocean Breeze) полезных функций для MT4/MQL4.
    Это универсальные функции, которые могут применяться в любом советнике. Подойдёт и для любого индикатора.
    Состав:
    OBz-General-Lib.mq4 - общие функции для ценового ряда, типа получение одной цены из цен бара OHLC разными методами. Правильная обработка торговых событий.
    OBz-Math-Lib.mq4 - математические подпрограммы, типа метода Гаусса для линейных уравнений.
    OBz-Trading-Lib.mq4 - открытие/закрытие позиции, РАСЧЁТ размера позиции от заданного риска.
    OBz-Visual-Lib.mq4 - удобный функции вывода параметров эксперта или сообщений на экран в столбик. Само масштабирует шрифт под размер окна.
    Библиотека хорошо зарекомендовала себя на протяжении нескольких лет на демо- и реальных счетах.
    Эта библиотека была применена в советнике Ocean Breeze на MQL5 Маркете, а также в советнике Graalino-Pro здесь на форуме
    https://forexdengi.com/threads/43165...m-on.-graalino
    Библиотека также может служить примером правильного структурного программирования на MQL4.
    Теперь постараюсь выкладывать тут обновлённые версии и дополнительные модули, по мере развития библиотек.
    Библиотека — Public Domain, free. Я-автор. Делайте с ней, что хотите.
    Примеры текстов функций и пример вывода на экран расчётного размера позиции от риска.
    paperclip Рисунок attachment4212361 
    paperclip Рисунок
    paperclip Вложения


  2. post_thanks Получено лайков: 4

    Незарегистрированный (4 пользователя)

    55pct_bonus
  3. линк#2
    Свой человек
    Все пучком
     
    IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация Аватар для IgorM
    Регистрация:
    09.05.2011
    Пол:
    Мужчина
    Сообщений:
    810
    Накопленные выплаты (Подробнее):
    27108 RUB
    Поставил лайков:
    236
    Получено лайков:   706
    в 417 сообщениях
    87%
    ПодписатьсяПодписаться
    Подписано 0
    Цитата Сообщение от AlexBanker Посмотреть сообщение
    Библиотека также может служить примером правильного структурного программирования на MQL4.
    сомнительное утверждение
    - нет единого стиля имен переменных, то UpperCamelCase, то UpperCamelCase + подчеркивание, то признак типа переменной dValue, то некое сочетание признака и смыслового значения There_Is .... в общем до требований написания кода для Гугл или Майкрософт, совсем не дотягивает
    - в библиотеке торговых функций ужасный микс использования break + continue + if-else , имхо должен быть какой то один стиль или if-else или if - continue
    - режут глаз в условиях if(value == false) , могу ошибаться, но так давно не пишут, для этого и применяют признак (префикс) булевой переменной is --- > isTradeContextFree , тогда будет привычное сейчас if(!isTradeContextFree) .... но наверное придираюсь, нравится пользуйтесь
    - циклы перебора ордеров неэкономные, имхо, лучше
    PHP код:
    for (i = OrdersTotal()-1; i >=0; i--)

    вместо Вашего
    PHP код:
    for (i = 0; i < OrdersTotal (); i++)


    имхо, очень громкое заявление, по моему это обычный MQL-стайл, а не пример правильного программирования


  4. post_thanks Получено лайков: 4

    ir0407 (21.10.2020), Незарегистрированный (3 пользователя)

  5. линк#3
    Частый гость
    AlexBanker стараюсь положительно себя зарекомендовать Аватар для AlexBanker
    Регистрация:
    03.01.2013
    Пол:
    Мужчина
    Сообщений:
    132
    Накопленные выплаты (Подробнее):
    2571 RUB
    Поставил лайков:
    47
    Получено лайков:   26
    в 22 сообщениях
    20%
    ПодписатьсяПодписаться
    Подписано 0
    Цитата Сообщение от IgorM Посмотреть сообщение

    Спасибо за отзыв.
    Программы пишутся не для компьютера, а для человека.
    "Неэкономные" оказываются намного выгоднее с точки зрения денег (и времени), когда в тексте всё понятно и просто.
    Усложнять - просто, упрощать - сложно.
    У меня там в этой (этих) библиотеках сотни функций, причём и на Си, и на MQL4, и на CUDA и в make-файлах. Это большой проект. И всё работает. И никто не путается. И часть этой библиотеки давно в кодебазе
    https://www.mql5.com/en/code/16208
    Ну и я написал первую и пока что единственную программу - советник MT4 для CUDA-GPU-ускорителя. Там внутри сотни подпрограмм на Си, CUDA и MQL4. И всё работает. Так что я как-бы знаю о чём говорю - как писать большие сложные программы без ошибок и путаницы.
    Так что всем рекомендую следовать этому стилю. Хотя поначалу это дела вкуса, но потом с опытом (пишу на Си с 1988 года) приходит понимание вот того второго предложения здесь, в этом посте.


  6. post_thanks Получено лайков: 2

    Незарегистрированный (2 пользователя)

  7. линк#4
    Свой человек
    Все пучком
     
    IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация Аватар для IgorM
    Регистрация:
    09.05.2011
    Пол:
    Мужчина
    Сообщений:
    810
    Накопленные выплаты (Подробнее):
    27108 RUB
    Поставил лайков:
    236
    Получено лайков:   706
    в 417 сообщениях
    87%
    ПодписатьсяПодписаться
    Подписано 0
    Цитата Сообщение от AlexBanker Посмотреть сообщение
    Ну и я написал первую и пока что единственную программу - советник MT4 для CUDA-GPU-ускорителя. Там внутри сотни подпрограмм на Си, CUDA и MQL4. И всё работает. Так что я как-бы знаю о чём говорю - как писать большие сложные программы без ошибок и путаницы.
    CUDA интересует, какие задачи?
    но тут вопросы сразу, почему MQL4, а не 5-ка?


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


  8. post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  9. линк#5
    Специалист
    ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация Аватар для ir0407
    Регистрация:
    02.12.2010
    Сообщений:
    7,292
    Накопленные выплаты (Подробнее):
    169700 RUB
    Поставил(а) лайков:
    932
    Получено лайков:   7,418
    в 3,564 сообщениях
    102%
    ПодписатьсяПодписаться
    Подписано 4
    Цитата Сообщение от IgorM Посмотреть сообщение
    имхо, очень громкое заявление, по моему это обычный MQL-стайл, а не пример правильного программирования
    "Не стреляйте в пианиста, он играет, как умеет".(с)
    Человек однозначно не программист, а любитель. И с сильно завышенной самооценкой своего творчества. Одно только заявление, что:
    Цитата Сообщение от AlexBanker Посмотреть сообщение
    Программы пишутся не для компьютера, а для человека.
    расставило все точки над Ё.
    Цитата Сообщение от IgorM Посмотреть сообщение
    CUDA интересует, какие задачи?
    CUDA в мире финансов может быть интересен и оправдан, только в части нейросетей и задач искуственного интеллекта, но это уже совершенно не уровень MQL, хотя привязать к нему подобные плюшки особого труда не составляет.
    Цитата Сообщение от IgorM Посмотреть сообщение
    почему MQL4, а не 5-ка?
    Смотрим про пианиста.


  10. post_thanks Получено лайков: 3

    IgorM (21.10.2020), Незарегистрированный (2 пользователя)

  11. линк#6
    Частый гость
    AlexBanker стараюсь положительно себя зарекомендовать Аватар для AlexBanker
    Регистрация:
    03.01.2013
    Пол:
    Мужчина
    Сообщений:
    132
    Накопленные выплаты (Подробнее):
    2571 RUB
    Поставил лайков:
    47
    Получено лайков:   26
    в 22 сообщениях
    20%
    ПодписатьсяПодписаться
    Подписано 0
    Цитата Сообщение от ir0407 Посмотреть сообщение
    "Не стреляйте в пианиста, он играет, как умеет".(с)
    Человек однозначно не программист, а любитель. И с сильно завышенной самооценкой своего творчества. Одно только заявление, что:

    расставило все точки над Ё.
    “Programs must be written for people to read, and only incidentally for machines to execute.”
    ― Harold Abelson, Structure and Interpretation of Computer Programs
    https://ru.wikipedia.org/wiki/%D0%90...BB%D1%8C%D0%B4
    К сожалению, более молодые программисты не всегда это понимают. Обсуждение тут:
    https://www.quora.com/How-true-is-Pr...ers-to-execute
    Извините, далее в аспекты CUDA или хорошего стиля не буду углубляться, это не по теме.
    Помните только, что в программировании
    Преждевременная "оптимизация" - источник всех бед.


  12. post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  13. линк#7
    Свой человек
    Все пучком
     
    IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация IgorM хорошая репутация Аватар для IgorM
    Регистрация:
    09.05.2011
    Пол:
    Мужчина
    Сообщений:
    810
    Накопленные выплаты (Подробнее):
    27108 RUB
    Поставил лайков:
    236
    Получено лайков:   706
    в 417 сообщениях
    87%
    ПодписатьсяПодписаться
    Подписано 0
    Цитата Сообщение от AlexBanker Посмотреть сообщение
    Извините, далее в аспекты CUDA или хорошего стиля не буду углубляться, это не по теме.
    тогда не надо было и приписывать в свое сообщение CUDA
    получается для красного словца приписали
    ладно, все ясно - топик по ссылке с продажей граалино почитал... смех и слезы
    имхо, не серьезно


  14. post_thanks Получено лайков: 2

    Незарегистрированный (2 пользователя)

  15. линк#8
    Специалист
    ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация Аватар для ir0407
    Регистрация:
    02.12.2010
    Сообщений:
    7,292
    Накопленные выплаты (Подробнее):
    169700 RUB
    Поставил(а) лайков:
    932
    Получено лайков:   7,418
    в 3,564 сообщениях
    102%
    ПодписатьсяПодписаться
    Подписано 4
    Цитата Сообщение от AlexBanker Посмотреть сообщение
    “Programs must be written for people to read, and only incidentally for machines to execute.”
    ― Harold Abelson, Structure and Interpretation of Computer Programs
    Сколько людей, столько и мнений. И далеко не всегда мнение публицистов отражает мнения практиков. Тем более, что подобное высказывание можно трактовать на разный манер. Вы это поняли по своему - это ваше право
    Цитата Сообщение от AlexBanker Посмотреть сообщение
    Помните только, что в программировании
    Преждевременная "оптимизация" - источник всех бед.
    Однако в ваших "либах" оптимизацией даже и не пахнет, от слова совсем. Более того... В них практически половина лишнего, "мусорного" кода. Отсюда и местный интерес и результат в кодобазе... С 16-го года 8500 просмотров, ни одного поста в обсуждении, всего 19 голосов и как вишенка на торте удаленный с сайта метаквотов аккаунт автора. Ну просто прелестно.


  16. линк#9
    Частый гость
    AlexBanker стараюсь положительно себя зарекомендовать Аватар для AlexBanker
    Регистрация:
    03.01.2013
    Пол:
    Мужчина
    Сообщений:
    132
    Накопленные выплаты (Подробнее):
    2571 RUB
    Поставил лайков:
    47
    Получено лайков:   26
    в 22 сообщениях
    20%
    ПодписатьсяПодписаться
    Подписано 0
    Цитата Сообщение от ir0407 Посмотреть сообщение
    Сколько людей, столько и мнений. И далеко не всегда мнение публицистов отражает мнения практиков. Тем более, что подобное высказывание можно трактовать на разный манер. Вы это поняли по своему - это ваше право
    В каком это смысле "публицист"?
    Он программист, доктор наук, автор языка Лого, я же ссылку привёл: "....и директор-основатель Creative Commons и Free Software Foundation".


  17. 55pct_bonus
  18. линк#10
    Специалист
    ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация Аватар для ir0407
    Регистрация:
    02.12.2010
    Сообщений:
    7,292
    Накопленные выплаты (Подробнее):
    169700 RUB
    Поставил(а) лайков:
    932
    Получено лайков:   7,418
    в 3,564 сообщениях
    102%
    ПодписатьсяПодписаться
    Подписано 4
    Цитата Сообщение от AlexBanker Посмотреть сообщение
    В каком это смысле "публицист"?
    Он программист, доктор наук, автор языка Лого, я же ссылку привёл: "....и директор-основатель Creative Commons и Free Software Foundation".
    1. Идем на вики и что мы видим...
    ЛоМЃго (англ. Logo) — язык программирования высокого уровня, разработанный в 1967 году Уолли Фёрзегом[en], Сеймуром Пейпертом и Синтией Соломон[en] в образовательных целях для обучения детей дошкольного и младшего школьного возраста основным концепциям программирования
    никакого Harold Abelson в составе авторов нет. Возможно он и адаптировал Logo под яблоко в свое время, но это аж никак не ставит его в ряд авторов самого языка. Но даже если бы и был, то в любом случае становятся понятными его тезисы про "must be written for people to read". Дети - это вам не хурлы-мурлы и не цацки-пецки, к ним подход нужОн.
    2. Вот то-то и оно, что он кто угодно, но только не программист. Ну или, как вариант, "детский программист" из далеких лохматых 20-го века, теоретические тезисы которого, в современном мире, давно и многократно опровергнуты современными стандартами и подходами в области практического программирования.
    3. Вы бы еще нашли себе корифеев из 30-х - 40-х годов, и продвигали бы сегодня их тезисы, на потеху современным кодерам(желательно на перфолентах и перфокартах).


  19. post_thanks Получено лайков: 1

    IgorM (21.10.2020)


Подписанные на тему (2)

Открыть

Похожие темы

  1. Отзыв на чай Tess "Daiquiri Breeze"
    от Marina2012 в разделе Продукты питания
    Replies: 1
    Последнее сообщение: 30.07.2020, 22:50
  2. Какие всемирно известные библиотеки вы знаете?
    от Alanalex в разделе ЛайфПедия - Конкурс Лучших Ответов (Свободная тематика)
    Replies: 6
    Последнее сообщение: 30.09.2019, 14:01
  3. Windows 10 19H1: 7 крупных изменений и функций будущего обновления
    от Andreypplk в разделе Телефоны, планшеты, компьютеры
    Replies: 0
    Последнее сообщение: 19.01.2019, 15:33