MT5 и скорость в боевом исполнении - страница 72

 
Andrei Trukhanovich:

самый непонимающий здесь это ты. не зафлуживай ветку

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

 

Сравнение функций обычного хостинга и форексного MetaTrader VPS

#
Функции и параметры
Обычный хостинг
MetaTrader Forex VPS
1
Минимальный пинг до сервера брокера
+
+
2
Задержки на уровне сервера из-за памяти и CPU
Есть
Нет
3
Ресурсы, оставшиеся для платформ MetaTrader *
20 %
99 %
4
Гибкое выделение ресурсов "по требованию"
Нет
Есть
5
Количество выделенных ядер CPU для одной платформы
1
Не ограниченно
6
Объем выделенной оперативной памяти
1 ГБ
до 3 ГБ
7
Сложность настройки и управления
Относительно высокая
Минимальная
8
Активации купленных в Маркете продуктов
1 активация сгорает
Не сгорает

На этом VPS кеши CopyTicks очищаются сразу? 3 Гб не хватит - сужу по нагрузке на домашней машине, если перезагрузить Терминал и десяток советников одновременно единоразово полезут брать историю тиков.

ChartSaveTemplate и Apply работают на VPS? В общем, предлагаю дать на стресс-тесты такую машину.

 
fxsaber:

"Обычный хостинг" - с графической оболочкой или без (Server Core)?

 
Aleksey Nikolayev:

"Обычный хостинг" - с графической оболочкой или без (Server Core)?

Отсюда таблицу брал.

Лучшее VPS-решение для торговли на Форекс – VPS для MetaTrader 4/5
Лучшее VPS-решение для торговли на Форекс – VPS для MetaTrader 4/5
  • www.mql5.com
Универсальными средствами очень сложно добиться рекордных показателей. Обычным VPS-решением очень сложно получить по-настоящему быстрое исполнение. И мы покажем вам почему. Инфраструктура обычных VPS-решений Хостинг-провайдеры берут достаточно мощный сервер и запускают на нем много виртуальных операционных систем. Скажем, имеется машина с...
 
fxsaber:
Пункты 4, 5, 6 - для самых дешёвых VPS.
Хотя признаю, что MT VPS лучше, если цена устраивает, и есть достаточно высокие требования. Тем более, что терминалы там без лишних обвесов.
 


Вот она вся проблема, обработчики тупо выполняются синхронно, т.е. в блокирующем режиме.
Сделайте их не блокирующими!


//+------------------------------------------------------------------+
//|                                                    TestBlock.mq5 |
//|                        Copyright 2019, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
{

   EventSetTimer(1);
   return(INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
   Comment("");
   EventKillTimer();

}

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
{
   int count = 0;
   
   while(!_StopFlag)
   {
      Comment((string)count++);
      ChartRedraw();
      Sleep(100);      
   }
   
}

//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
{
   Print("Остальные обработчики тупо заблокированы");

}

//+------------------------------------------------------------------+
//| ChartEvent function                                              |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
{



}
//+------------------------------------------------------------------+
//| BookEvent function                                               |
//+------------------------------------------------------------------+
void OnBookEvent(const string &symbol)
{



}
//+------------------------------------------------------------------+
 
Roman:


Вот она вся проблема, обработчики тупо выполняются синхронно, т.е. в блокирующем режиме.
Сделайте их не блокирующими!

Вы каким то древним народным творчеством обучались, то гусли Ваши не играют, то ложками тут стучите? )))

но попробую на Вашем древнем диалекте изъясняться:

если в WinForms Вы напишете таким же способом обработчик buttonClick(object sender, EventArgs e)

Вы сумеете обрабатывать нажатия других элементов  WinForms ?

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


старался быть предельно корректным, хотя короче получилось бы только  на чистом матерном объяснить

 
Igor Makanu:

Вы каким то древним народным творчеством обучались, то гусли Ваши не играют, то ложками тут стучите? )))

но попробую на Вашем древнем диалекте изъясняться:

если в WinForms Вы напишете таким же способом обработчик buttonClick(object sender, EventArgs e)

Вы сумеете обрабатывать нажатия других элементов  WinForms ?

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


старался быть предельно корректным, хотя короче получилось бы только  на чистом матерном объяснить

Иди учи асинхронное программирование, задолбали уже.

 
Roman:


Вот она вся проблема, обработчики тупо выполняются синхронно, т.е. в блокирующем режиме.
Сделайте их не блокирующими!

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

 
Roman:

Иди учи асинхронное программирование, задолбали уже.

зачем? я прекрасно понимаю как работают приложения в Win

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

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

а на кой это у юзера на десктопном приложении, терминал в Win? - ну наплодишь ты потоков, даже если будет возможность синхронизироваться некими await-функциями , то останется общий пул сообщений/событий


ладно, задолбал уже, распинаться тут перед тобой всем форумом, засерай топики со своими фантазиями, не моя проблема

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