MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1854

 
Alexander Avksentyev # :

Teker teker alın her biri kapanacak mı?Izgara bu kadar uzun olunca göz sağdakileri kapatacak.
İkincisi kapatıldığında, zaten 10 siparişin kapatılması gerekebilir ve şimdi birer birer her şey kapanır ve sonsuz uzun sürer.

Durmadan kapanır.

Birini kapattık, OrderClose fonksiyonunun ne döndürdüğünü kontrol ettik, eğer doğruysa - devam ediyoruz, yanlışsa - hatayı işliyoruz, kritik bir hata - çıkış, kritik değil (kayma) - devam ediyoruz.

İşlem tam bir mutfak değilse, o zaman 15-20 adet. 2-3 saniye, aksi takdirde 15 saniyeye kadar hızla kapatın. Düzenleme, 2 dakikaya kadar çıkan durumlar oldu

MT5 ise, neredeyse anında kapanır.

 
Vitaly Muzichenko # :

Durmadan kapanır.

Birini kapattık, OrderClose fonksiyonunun ne döndürdüğünü kontrol ettik, eğer doğruysa - devam ediyoruz, yanlışsa - hatayı işliyoruz, kritik bir hata - çıkış , kritik değil (kayma) - devam ediyoruz.

İşlem tam bir mutfak değilse, o zaman 15-20 adet. 2-3 saniye, aksi takdirde 15 saniyeye kadar hızla kapatın. Düzenleme, 2 dakikaya kadar çıkan durumlar oldu

MT5 ise, neredeyse anında kapanır.

Herhangi bir hata için, yine de belirli bir aradan sonra bu siparişi kapatmak için bir istek göndermeniz gerekir. Çünkü sonsuza kadar asılı kalırsa, zaten kötü bir robot olacak. Böyle bir emir (pozisyon) sayesinde, uzun süre tutulursa mevduatın boşaltılması bile mümkündür.

 
Mihail Matkovskij # :

Herhangi bir hata için, yine de belirli bir aradan sonra bu siparişi kapatmak için bir istek göndermeniz gerekir. Aksi takdirde, sonsuza kadar asılı kalırsa, zaten kötü bir robot olacaktır. Böyle bir emir (pozisyon) sayesinde, uzun süre tutulursa mevduatın boşaltılması bile mümkündür.

Düzgün işlenmesi gerekir. Kritikse, sunucuyu çekiçlemenin bir anlamı yoktur.

 
Vitaly Muzichenko # :

Düzgün işlenmesi gerekir. Kritikse, sunucuyu çekiçlemenin bir anlamı yoktur.

Tabii ki mantıklı değil. Ancak belli bir aradan sonra yine de bu sırayı (pozisyonu) kapatmaya çalışmakta fayda var. Çünkü. İlk olarak, açık bir ticaret süresiz olarak askıda kalamaz. İkincisi, pozisyonun kendisi sonsuza kadar kapalı kalamaz. Er ya da geç, sunucu siparişi kapatma isteğini kabul edecektir ( konum dışı ). Ve hiçbir şey yapmazsan, yukarıda söylediğim şey olacak. Mevduat güçlü bir düşüşe veya birleşmeye gidebilir.

 
Mihail Matkovskij # :

Tabii ki mantıklı değil. Ancak belli bir aradan sonra yine de bu sırayı (pozisyonu) kapatmaya çalışmakta fayda var. Çünkü. İlk olarak, açık bir ticaret süresiz olarak askıda kalamaz. İkincisi, pozisyonun kendisi sonsuza kadar kapalı kalamaz. Er ya da geç, sunucu siparişi kapatma isteğini kabul edecektir ( konum dışı ). Ve hiçbir şey yapmazsan, yukarıda söylediğim şey olacak. Mevduat güçlü bir düşüşe veya birleşmeye gidebilir.

Burada son zamanlarda kayma, DC sunucuda otomatik ticaret olasılığını devre dışı bıraktı. 1 dakika önce oldu ve sonra kapatıldı.

Yine de kapatmayı deneyecek miyiz?

 
Vitaly Muzichenko # :

Burada son zamanlarda kayma, DC sunucuda otomatik ticaret olasılığını devre dışı bıraktı. 1 dakika önce oldu ve sonra kapatıldı.

Yine de kapatmayı deneyecek miyiz?

kapanış pozisyonlarında kritik hatalar olması durumunda mesaj göndermek doğrudur. manuel olarak her zaman (neredeyse) kapatılabilir.

 
Vitaly Muzichenko # :

Burada son zamanlarda kayma, DC sunucuda otomatik ticaret olasılığını devre dışı bıraktı. 1 dakika önce oldu ve sonra kapatıldı.

Yine de kapatmayı deneyecek miyiz?

iyi o zaman arayabilirsin

 AccountInfoInteger ( ACCOUNT_TRADE_EXPERT )

Birlikte

 AccountInfoInteger ( ACCOUNT_TRADE_ALLOWED )

Ve

 TerminalInfoInteger ( TERMINAL_TRADE_ALLOWED )

Her ihtimale karşı. Ve işlevlerden herhangi birinin veya hepsinin karşılık gelen sonucuyla hiçbir şey yapmayın. Peki, başarısız kapatmanın bir sonucu olarak hataları buna göre ele alın.

Her durumda, işlevlerden en az biri onu yasaklayana kadar robotun ticaret yapmayacağının garantisi olacaktır.

Документация по MQL5: Программы MQL5 / Разрешение на торговлю
Документация по MQL5: Программы MQL5 / Разрешение на торговлю
  • www.mql5.com
Разрешение на торговлю - Программы MQL5 - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Mihail Matkovskij # :

Peki, başarısız kapatmanın bir sonucu olarak hataları buna göre ele alın.

Bilmiyorum, eğer OrderSend'i ararsanız ve sunucu ticareti yasakladıysa, OrderSend yanlış mı dönecek yoksa istek önce sunucuya mı gidecek ve sonra bir yanıt döndürecek mi? İkincisi ise, OrderSend true değerini döndürür. Ve sonra OrderSend işlevine yapılan çağrıları engellemek için kesinlikle işlevler ( ) eklemeniz gerekir . Ve eğer ilki ise, OrderSend false döndürdüğü için istek kuyruğa bile gitmeyecektir. mantıklı mı?

 
Mihail Matkovskij # :

Bilmiyorum, eğer OrderSend'i ararsanız ve sunucu ticareti yasakladıysa, OrderSend yanlış mı dönecek yoksa istek önce sunucuya mı gidecek ve sonra bir yanıt döndürecek mi? İkincisi ise, OrderSend true değerini döndürür. Ve sonra OrderSend işlevine yapılan çağrıları engellemek için kesinlikle işlevler ( ) eklemeniz gerekir . Ve eğer ilki ise, OrderSend false döndürdüğü için istek kuyruğa bile gitmeyecektir. mantıklı mı?

OrderSend başarı için bir bilet döndürür :)

Yeni başlayanlar için muhtemelen şubeye gideceğim

 
Vitaly Muzichenko # :

OrderSend başarı için bir bilet döndürür :)

Yeni başlayanlar için muhtemelen şubeye gideceğim

MQL4'te OrderSend bir bilet döndürür. Ve MQL5'te bool. MQL5 kurgularına bakmaya alışkınım. Ve MQL4'ü biraz unuttum (çünkü uygulamaları MQL5'ten MQL4'e taşımaya uzun zamandır alışkınım). MQL5'te genellikle bool OrderSend hem pozisyonları açar hem de kapatır ve emirleri oluşturur/siler. MQL5'in emirler, anlaşmalar ve pozisyonlar için işlevleri vardır. Ve MQL4'te giriş için int OrderSend ve çıkış için bool OrderClose. Ayrıca bekleyen siparişler için bool OrderDelete vardır. Ve MQL4'te sadece piyasaya bölünmüş ve bekleyen emirler. Bu iki dilin ne kadar farklı olduğunu hatırlamamı sağladı. :)

Bu nedenle, her şeyi bilmek imkansızdır. Ve kafa karıştırmak kolaydır.