Преимущества готовых Советников перед программистами / фрилансерами.
Push.Mail. Работа с электронной почтой и уведомлениями в MetaTrader
Описание
Скальпинг — один из самых сложных, рискованных и одновременно быстрых методов заработка. Однако нет гарантии, что вы получите свою прибыль после совершения сделок.
Стратегии, основанные на скорости тиковых данных, возможно, являются одними из самых обсуждаемых прибыльных систем. Однако есть некоторые нюансы, которые следует учитывать.
Котировки, поступающие в терминал, содержат различное количество данных.
Даже если вы установите два идентичных терминала от одной компании и запустите их одновременно (что нереалистично), вы не добьетесь 100% точных результатов.
Кроме того, запуск ваших скальперов одновременно не приведет к идеально синхронизированным результатам.
Сделки на двух терминалах могут отличаться.
Эта вариация зависит исключительно от потока передачи данных от сервера к вашему терминалу.
Обсуждение моих систем TickSniper для MT4 и TickSniper для MT5 происходит на других форумах с одним вопросом: Почему открытые позиции и прибыли на MT4 и MT5 различаются?
Ответ прост: разница в котировках. Терминал MT4 имеет более медленный поток котировок, вероятно, из-за перегрузки трафика.
В терминале MetaTrader 5 поток котировок в десять раз быстрее, что приводит к значительным различиям между открытыми сделками.
Для этой статьи были специально разработаны два Экспертных советника: TEST TICK для MT5 и TEST TICK для MT4. Они полностью идентичны по коду (конечно, языки программирования различны, поэтому названия функций отличаются).
Код для MT4:
#property copyright "Copyright 2024, expforex" #property link "" int timestart = 0; int ticknumber = 0; // Tick number double PriceBID = 0; // BID tick price double PriceASK = 0; // ASK tick price int TimemsTick = 0; // Tick time in ms int init() { timestart = Time[0]; // Start counting from a new bar so that all EAs on all terminals start the same way. return(0); } // The advisor starts with each tick int start() { if(timestart != Time[0]) { if(TimemsTick == 0) TimemsTick = GetTickCount(); ticknumber++; PriceBID = Bid; PriceASK = Ask; Comment("\n\n\n\n Tick Number = " + ticknumber + "\nPriceBID = " + PriceBID + "\nPriceASK = " + PriceASK + "\nTimeTickinms = " + (GetTickCount() - TimemsTick)); Print("Tick Number = " + ticknumber + " PriceBID = " + PriceBID + " PriceASK = " + PriceASK + " TimeTickinms = " + (GetTickCount() - TimemsTick)); } return(0); }
Код для MT5:
#property copyright "Copyright 2024, expforex." #property link "" #property version "1.00" int timestart = 0; int ticknumber = 0; // Tick number double PriceBID = 0; // BID tick price double PriceASK = 0; // ASK tick price int TimemsTick = 0; // Tick time in ms int OnInit() { datetime Time[]; ArraySetAsSeries(Time, true); CopyTime(_Symbol, _Period, 0, 1, Time); timestart = (int)Time[0]; // Start counting from a new bar so that all EAs on all terminals start the same way. return(INIT_SUCCEEDED); } // The advisor starts with each tick void OnTick() { datetime Time[]; ArraySetAsSeries(Time, true); CopyTime(_Symbol, _Period, 0, 1, Time); if(timestart != (int)Time[0]) { if(TimemsTick == 0) TimemsTick = (int)GetTickCount(); ticknumber++; MqlTick last_tick; SymbolInfoTick(_Symbol, last_tick); double Bid = last_tick.bid; SymbolInfoTick(_Symbol, last_tick); double Ask = last_tick.ask; PriceBID = Bid; PriceASK = Ask; Comment("\n\n\n\n Tick Number = " + ticknumber + "\nPriceBID = " + PriceBID + "\nPriceASK = " + PriceASK + "\nTimeTickinms = " + (GetTickCount() - TimemsTick)); Print("Tick Number = " + ticknumber + " PriceBID = " + PriceBID + " PriceASK = " + PriceASK + " TimeTickinms = " + (GetTickCount() - TimemsTick)); } return; }
Эти Экспертные Советники Выполняют Следующее:
При инициализации советник записывает бар, на котором он начал работу, чтобы убедиться, что все экспертные советники на всех четырех терминалах начинают одновременно на следующем баре (в нашем случае, M30).
Впоследствии, с каждым тиком, советник регистрирует данные на экране и в журнале: номер тика, цены BID/ASK и время тика в миллисекундах с начала расчета.
Я загрузил два терминала MT4 и два терминала MT5 от одного брокера, чтобы сделать наш тест более достоверным.
Установили ли вы MetaTrader?
MetaTrader необходим для установки с сайта www.expforex.com
Я запустил терминалы, применил графики EURUSD M30 ко всем четырем терминалам и использовал одного Экспертного советника, чтобы проверить наши наблюдения.
Начальные записи в наших журналах указывают, что мы начали одновременно:
mt4_1:
18:29:58 TEST TICK EURUSD, M30: Tick number = 1 PriceBID = 1.32281000 PriceASK = 1.32289000 TimeTickinms = 0
mt4_2:
18:29:58 TEST TICK EURUSD, M30: Tick number = 1 PriceBID = 1.32281000 PriceASK = 1.32289000 TimeTickinms = 0
mt5_1:
GR 0 18:29:58 TEST TICK (EURUSD, M30) Tick number = 1 PriceBID = 1.32336000 PriceASK = 1.32344000 TimeTickinms = 1065503
mt5_2:
GR 0 18:29:58 TEST TICK (EURUSD, M30) Tick number = 1 PriceBID = 1.32335000 PriceASK = 1.32345000 TimeTickinms = 1065674
Как видно на следующих скриншотах, котировки начали одинаково, но мы наблюдали 1-2 тиковые расхождения. Это ясно указывает на следующее:
Скальпер не может достичь 100% идентичных результатов на двух разных платформах MT4 и MT5.
Он также не может открывать сделки одновременно на двух терминалах одной платформы MT4/MT5.
Это нереалистично и не вина брокера.
Транспортный протокол проходит по сети от сервера к вашему компьютеру, что приводит к потере пакетов — нормальное явление.
Разница в расчетах и анализе
Следующие скриншоты иллюстрируют расхождения:
Это всего лишь 3 минуты после запуска советников.
Давайте обратимся к нашим журналам для тика номер 1433 на терминалах MT4:
18:47:44 TEST TICK EURUSD, M30: Tick number = 1433 PriceBID = 1.32336000 PriceASK = 1.32344000 TimeTickinms = 1065503
18:47:44 TEST TICK EURUSD, M30: Tick number = 1433 PriceBID = 1.32335000 PriceASK = 1.32345000 TimeTickinms = 1065674
У нас одинаковое серверное время, но время в мс отличается, как и котировки.
Тик номер 1684
18:52:05 TEST TICK EURUSD, M30: Tick number = 1684 PriceBID = 1.32377000 PriceASK = 1.32385000 TimeTickinms = 1326586
18:52:03 TEST TICK EURUSD, M30: Tick number = 1684 PriceBID = 1.32374000 PriceASK = 1.32382000 TimeTickinms = 1324496
Не только время отличается, но и цены BID/ASK.
Теперь давайте сравним то же самое на терминалах MT5:
ES 0 18:48:42 TEST TICK (EURUSD, M30) Tick number = 4316 PriceBID = 1.3231 PriceASK = 1.32318 TimeTickinms = 1124050
DS 0 18:48:43 TEST TICK (EURUSD, M30) Tick number = 4316 PriceBID = 1.32311 PriceASK = 1.3232 TimeTickinms = 1124502
Одинаковый номер тика, но почему разные цены?
Или вот еще один пример:
RJ 0 18:52:21 TEST TICK (EURUSD, M30) Tick number = 4984 PriceBID = 1.32363 PriceASK = 1.32371 TimeTickinms = 1342701
H 0 18:52:22 TEST TICK (EURUSD, M30) Tick number = 4984 PriceBID = 1.32364 PriceASK = 1.3237 TimeTickinms = 1344355
Разное время поступления тиков в мс, разные цены ASK/BID
В архив содержатся все материалы, связанные с этой статьей, включая сами Экспертные советники, видео, изображения и файлы журналов терминала.
Возникает вопрос:
Может ли один и тот же Экспертный советник на двух реальных/живых счетах, одного брокера, на одной платформе выполнять идентичные сделки с 100% точностью?
Очевидный ответ — Нет.
Такое не происходит!
Надеюсь, эта статья в будущем подробно ответит на все ваши вопросы. С этими знаниями вы сможете более точно управлять вашим скальпером на всех ваших терминалах.
Увеличивайте свою прибыль.
Как Узнать Ping (Время Доступа до Серверов Вашего Брокера)
Скорость от VPS до сервера брокера легко определить. Эта функция стандартна в Windows и называется PING.
Чтобы определить время доступа, вам нужно найти адрес вашего сервера.
Сначала откройте папку терминала и перейдите в подпапку CONFIG.
Найдите файл с именем вашего сервера.
Далее откройте файл в Блокноте и найдите путь к вашему брокеру. Скопируйте его в буфер обмена.
Затем откройте меню Пуск и введите команду cmd.
Затем введите команду ping, за которой следует адрес вашего сервера.
ping mt4-demo.roboforex.com
Результат отображает время от вашего компьютера до сервера вашего брокера в миллисекундах (мс).
Чем ниже значение, тем лучше для любого Экспертного советника, особенно для скальпера.
Вы также можете проверить ваш ping до сервера или изменить Дата-центр в нижнем правом углу вашего терминала:
Если ваш ping слишком высок, вы можете установить Экспертного советника на VPS сервер.
Вопросы?
Если у вас есть вопросы, не стесняйтесь задавать их. Мы не продаем вам “свинью в мешке”.
Каждый из наших продуктов можно протестировать перед покупкой.
Мы ценим ваши отзывы и запросы на наши продукты и стремимся поддерживать высокие стандарты качества.
Спасибо, что вы с нами!
У вас есть вопрос?
This post is also available in: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어
Leave a Reply