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

 
fxsaber:

Т.е. MetaQuotes сначала забирает историю одним каналом из соответствующего брокера, а затем распределяет ее по Облачным узлам, откуда все бежит на свои Агенты? Т.е. сами Агенты от брокера напрямую ничего не получают? Т.е. облачные узлы содержат терабайты данных каждый, которые обновляются по мере поступления задач.

Нет.

Прочтите мой текст буквально. Вся точная история берется с терминала заказчика работы.

 
Renat Fatkhullin:

Прочтите мой текст буквально. Вся точная история берется с терминала заказчика работы.

Тогда не понимаю. Аплоадом исторических данных Терминал же не является.

 
Renat Fatkhullin:

Я поправил утверждение, что в клауде тесты идут на истории MetaQuotes. Это очень важное замечание.

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

 
Aleksey Vyazmikin:

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

А что означает слово Cloud в MQL5 Cloud Network?

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

Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Большую часть времени современные компьютеры простаивают и не используют всех возможностей процессора. Мы предлагаем задействовать их с пользой. Вы можете сдавать мощности вашего компьютера другим участникам нашей сети для выполнения разнообразных...
 
Renat Fatkhullin:

А что означает слово Cloud в MQL5 Cloud Network?

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


Уважаемый Ренат, это Вы должны рассказывать, что значат слова в ваших аббревиатурах, мне то откуда знать!?

Описание сервиса конечно читал, и статьи читал, и вообще пользовался...

Мне то не ясен Ваш ответ:

Кто берет и куда кладет? Я то думал, что агенты или качают историю с сервера MQ, который качает историю у брокера.... ведь если качается история с терминала моего, то не ясно, что мешает использовать кастомные символы... ведь в любом случае после оптимизации история затирается у агентов, спустя разумное время.

Хотелось бы больше конкретики.

 

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

возможно ли с вами скооперироваться( у меня художественное обр) и скажем если бы я вам выслал папку с изображениями или текстовым файлом где описывалось бы какой элемент интерфейса покрасить в конкретный rgb цвет, вы могли бы это сделать? Или хотя бы расширить настройки что бы можно было поменять абсолютно всё-от шрифтов, до цвета главного окна, контекстного меню упаковать в скин и обмениваться ими?

зы

Люди ведь проводят по столько часов в день вглядываясь в терминал и вид внешний тоже оказывает воздействие((

 
AlikMsk:

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

возможно ли с вами скооперироваться( у меня художественное обр) и скажем если бы я вам выслал папку с изображениями или текстовым файлом где описывалось бы какой элемент интерфейса покрасить в конкретный rgb цвет, вы могли бы это сделать? Или хотя бы расширить настройки что бы можно было поменять абсолютно всё-от шрифтов, до цвета главного окна, контекстного меню упаковать в скин и обмениваться ими?

зы

Люди ведь проводят по столько часов в день вглядываясь в терминал и вид внешний тоже оказывает воздействие((

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

 


Для кастомных тиков в GUI не хватает опции запроса тиков с самого начала. Например, у меня есть тики с нулевым временем. И посмотреть их через GUI крайне сложно.

Так же ТОЛЬКО для кастомных символов не хватает информации, сколько всего тиков в его истории.

Т.е. сейчас GUI очень хорош для реальных символов и не полностью соответствует удобной работе с кастомными символами.

 
В Справке сказано
Замена тиков производится последовательно день за днём до времени указанного в to_msc либо до момента возникновения ошибки. Сначала обрабатывается первый день из указанного диапазона, затем следующий, и так далее. Как только обнаружится несоответствие времени тика порядку возрастания (неубывания), то процесс замены тиков сразу же прекращается на текущем дне. При этом тики за предыдущие дни будут успешно заменены, а текущий день (на момент неправильного тика) и все оставшиеся дни в указанном интервале останутся без изменения.

Согласно написанному, этот код не должен работать, но он работает

void OnStart()
{  
  const string Name = "A1234";

  if (CustomSymbolCreate(Name) || SymbolInfoInteger(Name, SYMBOL_CUSTOM))
  {    
    MqlTick Ticks[] = {{0}, {0}};
    
    Ticks[0].time = 24 * 3600 - 1;
    Ticks[1].time_msc = 1;

    ArrayPrint(Ticks);
    
    Print(CustomTicksReplace(Name, Ticks[0].time_msc, Ticks[1].time_msc, Ticks));
  }
}


Результат

                 [time] [bid] [ask] [last] [volume] [time_msc] [flags]
[0] 1970.01.01 23:59:59 0.000 0.000 0.0000        0          0       0
[1] 1970.01.01 00:00:00 0.000 0.000 0.0000        0          1       0
2


Поясните, пожалуйста, еще раз, как работает CustomTicksReplace? Вроде MqlTick.time-поле не должно влиять на результат, но оно влияет - не будет работать, если

Ticks[0].time = 24 * 3600;

Совсем непонятно сейчас, как что происходит.

Документация по MQL5: Пользовательские символы / CustomTicksReplace
Документация по MQL5: Пользовательские символы / CustomTicksReplace
  • www.mql5.com
либо до момента возникновения ошибки. Сначала обрабатывается первый день из указанного диапазона, затем следующий, и так далее.  Как только обнаружится несоответствие времени тика порядку возрастания (неубывания), то процесс замены тиков сразу же прекращается на текущем дне. При этом тики за предыдущие дни будут успешно...
 

Не могу понять, как использовать функции CustomRatesReplace и CustomRatesUpdate. Когда копирую с помощью них бары взятые из обычного символа, все хорошо. А вот когда копирую, свои данные начинаются проблемы. Копирую одни данные, а Custom символ попадают другие... Вот пример.

Копирую бары с помощью CustomRatesReplace

2017.07.11 10:33:00 O=6869.9999996 L=6869.9999996 H=6870.0000004 C=6870.0000004 RealVolume=2 TickVolume=2 Spread=8
2017.07.11 10:38:00 O=5280.0 L=5280.0 H=6770.0 C=6770.0 RealVolume=10 TickVolume=10 Spread=8


А в custom  символ   попадают

2017.07.11 10:33:00 O=6869.9999996 L=6869.9999996 H=6870.0000004 C=6870.0000004 RealVolume=2 TickVolume=2 Spread=8
2017.07.11 10:38:00 O=5280.0 L=5280.0 H=5309.71111936 C=5266.7614464 RealVolume=10 TickVolume=10 Spread=8


Алгоритм такой.

1. Удаляю custom символ. Создаю custom символ.

2. Пишу в custom символ 

SYMBOL_TRADE_TICK_SIZE 1e-08

 SYMBOL_TRADE_TICK_VALUE 1e-08

SYMBOL_POINT 1e-09

SYMBOL_DIGITS 8

3. Скачиваю бары из обычного символа. Немного изменяю бары состоящие из одной сделки.

4. Записываю эти измененные бары в custom символ.

5. Скачиваю записанные бары из custom символа.

6. Наблюдаю разницу между некоторыми записными барами и барами, которые я пытался записать.

Сам скрипт прикрепил. Версия терминала 1653

Файлы:
temp.mq5  10 kb
Причина обращения: