Новая версия платформы MetaTrader 5 build 1640: создание и тестирование собственных финансовых инструментов - страница 16

 
Renat Fatkhullin:

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

Что у вас с головой, если вы предлагаете превратить аналитическую систему, у которой главное требование - максимизация скорости всех процессов, в переархиватор данных с полным убийством процессора и торможением всего? Дальше своего Я не видите?

Давайте обойдёмся без хамства и перехода на личности, ок?  У меня тоже постоянно напрашиваются аналогичные фразы в отношении Вас, однако ж я не высказываю их публично.  Давайте держаться в рамках этики и норм приличий.  Тем более, что вы являетесь официальным представителем компании.  И уж кто тут выглядит ребёнком, не умея даже контролировать свои эмоции и отвечать за слова...

Я уже дважды повторял вопрос:  каков период удаления неиспользуемых данных?  Вы сами заявили, что они удаляются.  Однако я привёл имеющиеся данные, свидетельствующие что ничего не удаляется даже спустя 4 месяца.  Но вы игнорируете все эти разговоры по существу, а занимаетесь лишь рассуждениями на отвлечённые темы и упражняясь в софистике.

Выходит, что ничего не удаляется на самом деле, так?

 
Alexey Navoykov:

Давайте обойдёмся без хамства и перехода на личности, ок?  У меня тоже постоянно напрашиваются аналогичные фразы в отношении Вас, однако ж я не высказываю их публично.  Давайте держаться в рамках этики и норм приличий.  Тем более, что вы являетесь официальным представителем компании.  И уж кто здесь выглядит ребёнком, не умея даже контролировать свои эмоции и отвечать за свои слова...

А Вы не ответили за свои слова.  Я вам уже дважды повторил вопрос:  каков период удаления неиспользуемых данных?  Вы сами заявили, что они удаляются.  Однако я привёл данные по имеющимся файлам, свидетельствующие что ничего не удаляется даже спустя 4 месяца.  И после этого вы постоянно увиливаете от темы, рассуждая на всякие отвлечённые темы. Поупражняться в софистике можно где-то в другом месте.

Выходит, что ничего не удаляется на самом деле, так?

Зря вы так. Компания ведь нам с вами ничего не должна, потому что платформа то бесплатная.  Пользуйтесь на здоровье, а если что то нам не нравится, то врядли мы имеем моральное право требовать ответов в таком тоне. С моей точки зрения, это неправильно. Я бы такого тона терпеть не стал. Странно, что вас еще не забанили.
 
Реter Konow:
Зря вы так. Компания ведь нам с вами ничего не должна...

И это даёт им право хамить?

При чём здесь вообще "должна/не должна"?  Если почитаете ход обсуждения, с моей стороны не было никаких требований.  Я лишь указал на определённые проблемы, и на возможные пути решения. Задал конкретные вопросы. Покажите место, где я что-то требовал?   Или вы строите свои суждения лишь по истеричным постам Рената, который перекручивает всё с ног на голову, искажая смысл, и при помощи подмены понятий уводит разговор в плоскость абсурда: "переархиватор данных с полным убийством процессора и торможением всего".  Во как!  Ещё чуть-чуть, и это будет уже "машина для убийства всего и вся".

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

Все понятия о кодировании информации у него сводятся к архиваторам, типа 7-zip. Именно их он приводит в пример.  А это и близко не стоит к эффективной упаковке данных, о которой я говорю.  Т.е. всё упирается в банальную неграмотность этого человека, а не в наше непонимание чего-то.    Я предлагал пари, что смогу доказать, что можно сжимать исторические данные в 10 раз, при этом скорость работы будет в 15-20 раз выше скорости того же 7-zip.  И это в исполнении на MQL (!)   А на C++ соответственно в разы выше.  Но человеку не интересны все эти детали, а больше нравится бросаться абстрактными фразами, что мол мы чего-то там не понимаем. Видимо так он самоутверждается в собственных глазах.

 

Alexey Navoykov:

...

Я предлагал пари, что смогу доказать, что можно сжимать исторические данные в 10 раз, при этом скорость работы будет в 15-20 раз выше скорости того же 7-zip.  И это в исполнении на MQL (!)   А на C++ соответственно в разы выше.  Но человеку не интересны все эти детали, а больше нравится бросаться абстрактными фразами, что мол мы чего-то там не понимаем. Видимо так он самоутверждается в собственных глазах.

Так сделайте и покажите результат - может полезней споров будет. И если действительно результат будет таким, как вы говорите, то наверняка к вам прислушаются MQ. Глядишь, и полезное дело сделаете. Всем.

 
Alexey Navoykov:

можно сжимать исторические данные в 10 раз

Исходные данные - MqlRates? По сравнению с этим набором структур в 10 раз?

ЗЫ Посмотрел структуру

struct MqlRates 
  { 
   datetime time;         // время начала периода 
   double   open;         // цена открытия 
   double   high;         // наивысшая цена за период 
   double   low;          // наименьшая цена за период 
   double   close;        // цена закрытия 
   long     tick_volume;  // тиковый объем 
   int      spread;       // спред 
   long     real_volume;  // биржевой объем 
  };
Сомневаюсь, что это является юнитом hcc, но проверить несложно.
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Alexey Navoykov:

Давайте обойдёмся без хамства и перехода на личности, ок?  У меня тоже постоянно напрашиваются аналогичные фразы в отношении Вас, однако ж я не высказываю их публично.  Давайте держаться в рамках этики и норм приличий.  Тем более, что вы являетесь официальным представителем компании.  И уж кто тут выглядит ребёнком, не умея даже контролировать свои эмоции и отвечать за слова...

Я уже дважды повторял вопрос:  каков период удаления неиспользуемых данных?  Вы сами заявили, что они удаляются.  Однако я привёл имеющиеся данные, свидетельствующие что ничего не удаляется даже спустя 4 месяца.  Но вы игнорируете все эти разговоры по существу, а занимаетесь лишь рассуждениями на отвлечённые темы и упражняясь в софистике.

Выходит, что ничего не удаляется на самом деле, так?


Алексей, я извиняюсь что встреваю в разговор, но у вас разговор на разных уровнях. Человек, с которым вы спорите - уже всем и всё доказал, сотням тысяч людей доказал, успешным делом и успешной компанией.

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

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

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

--------------

Например ... вы программист, да?
А я нет ...
Могу я вас учить и предметно спорить с вами по программированию (сильно в этом не разбираясь, и не имея ни одного продукта в Маркете)?
Могу, но разговор будет такой же как у вас спор, только наоборот
:)

--------------

Еще один момент, который вы наверное знаете.
Если вы спрашиваете что-то у модератора или админа (или модератор или админ "зацепились" за ваш пост на дискуссию), то происходит следующее:

  • вы спрашиваете (например)
  • модератор или админ отвечает, но отвечает он всем, кто читает и будет читать.

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

 
Sergey Golubev:

Человек, с которым вы спорите - уже всем и всё доказал, сотням тысяч людей доказал, успешным делом и успешной компанией.

Создание себе авторитетов и жесткая логика очень сложно сочетаются...

Скрипт

// Насколько жмутся MqlRates-данные и скорость упаковки/распаковки
#include <TypeToBytes.mqh> // https://www.mql5.com/ru/code/16280

#define TOSTRING(A) #A + " = " + (string)(A) + "\n"

void OnStart()
{
  MqlRates Rates[];
  uchar Tmp[];  
  
  const int Amount = CopyRates(_Symbol, PERIOD_CURRENT, 0, Bars(_Symbol, PERIOD_CURRENT), Rates) * sizeof(MqlRates);  
  
  // Архивируем
  const ulong StartTime1 = GetMicrosecondCount();
  const int AmountZIP = CryptEncode(CRYPT_ARCH_ZIP, _R(Rates).Bytes, Tmp, Tmp);
  
  Print(TOSTRING(Amount) + TOSTRING(AmountZIP) + TOSTRING((double)Amount / AmountZIP) + TOSTRING(GetMicrosecondCount() - StartTime1));
  
  uchar Tmp2[];
  
  // Разархивируем
  const ulong StartTime2 = GetMicrosecondCount();
  CryptDecode(CRYPT_ARCH_ZIP, Tmp, Tmp2, Tmp2);
  Print(TOSTRING(GetMicrosecondCount() - StartTime2));
  
  Print(TOSTRING(_R(Rates) == Tmp2)); // Совпадают ли данные?
}


Результат

Amount = 17270160
AmountZIP = 4783757
(double)Amount/AmountZIP = 3.610166653531941
GetMicrosecondCount()-StartTime1 = 480464

GetMicrosecondCount()-StartTime2 = 63386

_R(Rates)==Tmp2 = true

300 000 баров жмутся в 3.5 раза менее, чем за пол секунды. Обратная операция занимает 60 миллисекунд. И это без какой-либо оптимизации.

 
Sergey Golubev:

...

--------------

Еще один момент, который вы наверное знаете.
Если вы спрашиваете что-то у модератора или админа (или модератор или админ "зацепились" за ваш пост на дискуссию), то происходит следующее:

  • вы спрашиваете (например)
  • модератор или админ отвечает, но отвечает он всем, кто читает и будет читать.

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


Иногда конечно бывает перебор.
Например один в ветке спросил одним постом в три коротких предложения (тут) - что за индикатор на видео (он в первом посте дал видео с ютуба).
Я понял, что это NRTR (или его вариации), и ответил своим постом:

Forum on trading, automated trading systems and testing trading strategies

No repaint support & resistance indicator

Sergey Golubev, 2017.10.09 07:28

Nick Rypock Trailing Reverse ( NRTR )


The forum

CodeBase

The articles

The blogs

The market

  • many in search here

 
Sergey Golubev:

Иногда конечно бывает перебор.

Пожалуйста, не создавайте оффтоп.

 
Alexey Navoykov:

Давайте обойдёмся без хамства и перехода на личности, ок?  У меня тоже постоянно напрашиваются аналогичные фразы в отношении Вас, однако ж я не высказываю их публично.  Давайте держаться в рамках этики и норм приличий.  Тем более, что вы являетесь официальным представителем компании.  И уж кто тут выглядит ребёнком, не умея даже контролировать свои эмоции и отвечать за слова...

Я уже дважды повторял вопрос:  каков период удаления неиспользуемых данных?  Вы сами заявили, что они удаляются.  Однако я привёл имеющиеся данные, свидетельствующие что ничего не удаляется даже спустя 4 месяца.  Но вы игнорируете все эти разговоры по существу, а занимаетесь лишь рассуждениями на отвлечённые темы и упражняясь в софистике.

Выходит, что ничего не удаляется на самом деле, так?

Итогом:

  1. Вы исходно задавали вопрос про VPS и невозможность развернуться на мизерном диске там.
    Не надо делать вид, что это не так. Все уточнения и последующие ваши объяснения (микро диск, нет 10 гб, бесплатный трафик, хотя тут же флешка[которая сама стоит копейки] и экономия трафика) четко на это указывали.

  2. Ваша позиция рождена исключительно из-за экономии пары долларов на VPS.
    Вам плевать, что кто-то будет платить за вас - вы не реагируете на указание этого, причем вы в потрясающей позиции "меня не волнует ничего, для меня все бесплатно".

  3. Ответ про диск был дан четко: если нет 10 долларов на 10 гб SSD диска, то делать в трейдинге нечего.
    Требование такого объема для аналитической платформы, работающей с огромными объемами данных - это норма.

    Все знают нашу нацеленность на экономию ресурсов, что не давало возможности раньше(3-5 лет назад, хотя сбор и хранения тиков на сервере были всегда) вводить выдачу неограниченных тиков. Потому что массово возможностей пользователей не хватало. Сейчас средний технологический уровень железа и каналов подрос и мы открыли тики, что дало увеличение объемов и детализации рыночных данных.

  4. Несколько раз была дана подсказка - мы все это проверяли, это наша работа
    Надо реально отключать мозг, чтобы не реагировать на это. Мы 17 лет занимаемся разработкой торговых платформ и без сожаления выкидываем старые архитектуры, когда видим возможность сделать лучше и правильнее. Так сделали уже 5 раз: FX Charts, MetaQuotes, MetaTrader 3, MetaTrader 4 и MetaTrader 5.

    Всегда перед нами стояла и стоит задача сделать эффективное решение, чтобы вписаться в технологические ограничения. Методы упаковки и передачи самых больших данных чартов и тиков мы в MetaTrader 5 переписывали раз 5, не меньше. Для сжатия чартов и тиков используем свои очень эффективные форматозависимые битовые дельта-алгоритмы с дополнительным сжатием поверх полученных результатов. Чистой дельты недостаточно, конечно же.

    И стратегию "давайте все на лету расжимать" тоже тестировали - результаты были исключительно провальные из-за неприемлемых задержек. По сути нужно разархивировать полновесный внешний слой, а уже потом из дельта-пакетов построить рабочий ряд. Такое можно сделать один раз, построив кеши *.hcc, чтобы потом мгновенно иметь к ним доступ.


  5. Приоритет за скоростью доступа и работы.
    Игры в постоянную перепаковку смертельны для платформы. В масштабах миллионов пользоватей это чистое экономическое и технологическое самоубийство.
    Непонимание этого полностью исключает вас из продолжения обсуждения. По сути это совет "Метаквотс, убейся об стену", после получения которого человек сразу же записывается во вредители.

  6. Следующий приоритет за экономией трафика
    Объемы выкачиваемых исторических данных нередко исчисляются гигабайтами на одного пользователя, когда он занимается глубоким тестированием или сканом всего рынка. Количество финансовых инструментов на серверах исчисляются сотнями, а у некоторых наших клиентов десятками тысяч.

    Полное безумие думать, что платформа будет агрессивно стирать свои накопленные данные. Трафик стоит больших денег как для клиентов, так и для брокеров(в тысячи раз дороже).  С учетом того, что подавляющая часть трейдеров находится в Юго Восточной Азии, где цены на трафик в датацентрах не просто большие, а космические (грубо, 10 гб стоят 1 USD), то надо быть реально вредителем, чтобы использовать стратегию "а что, закачаю еще раз при необходимости".

    Добавьте сюда еще и проблему достаточно плохой связи трейдеров, чтобы дополнить картину.

    Речь идет о реальном мире, а не об интернет заповеднике по имени Москва+Питер(европейская часть России), где люди вообще не знают, что такое проблемы с интернетом, так как вокруг них наставлено столько веб-акселераторов-прокси, что им все тяжелое доставляется с соседней улицы. Там, где живет 50% населения планеты, все кардинально по другому.

  7. О вашей зацепке про якобы нестираемость данных

    История символа стирается, когда ею не пользуются и не обновляют 60 дней. Тут надо четко понимать, что использование может быть неявное по наличию символа в обзоре рынка, в истории сделок, связанном участии в пересчетах (поэтому *USD* практически бессмертен) или в запросах программ. И компьютер не ошибается в оценке времени неиспользования. Если не удаляется, значит было использование.

    Это абсолютно разумная стратегия, которая дает быструю реакцию трейдеру.

  8. Теперь об обвинении меня в незнании моей прямой работы
    Я 27 лет безостановочно занимаюсь программированием. 17 последних лет пишу торговые платформы, являюсь руководителем компании и отвечаю за ее результаты.

    То, что вы тут показали - это попытка броситься с голой шашкой на танк. Да еще со столь глупыми заявлениями.
Причина обращения: