Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 1440

 
Aleksey Vyazmikin #:

Sanırım OnTick'in demek istediği şuydu.

Evet, doğru, bulanık.

 
Alexey Viktorov #:

Birçok insan bir programlama dili öğrenmeye bunun için başlar. Ve böylece hayali fikrinizi test edebilmeniz için birinin oturup yazacağı ortaya çıkıyor. Elbette, yazma pratiği uğruna, can sıkıntısından ya da başka bir nedenle yazabilecek böyle bir meraklı bulabilirsiniz... Ancak kabul ederseniz ve LS aracılığıyla bir strateji alırsanız, işe yaramayacağını fark ederseniz yazmayı reddedin, o zaman aldatıldığınızdan, karlı bir stratejiye sahip olduğunuzdan ve çalılıklara girdiğinizden şüpheleneceksiniz. Ve kimin böyle bir tutuma ihtiyacı var? Bir strateji yayınlarsanız ve birileri ilgilenirse, şanslısınız demektir. Ve böylece, paranız için herhangi bir heves....

Siz ilginç bir insansınız.

Yani böyle bir gösterge için yeterince hevesiniz var) https://c.mql5.com/1/237/vgif-ru-19978.gif.

Ve yazma pratiği uğruna, can sıkıntısından veya başka nedenlerden dolayı RSI'ya iki satır kod eklemek istemezsiniz...

 
FYFRX #:

İlginç bir adamsın.

Yani böyle bir gösterge için yeterince hevesiniz var) https://c.mql5.com/1/237/vgif-ru-19978.gif

Ve yazma pratiği uğruna, can sıkıntısından veya başka nedenlerden dolayı RSI'ya iki satır kod eklemek istemezsiniz...

İki satır olduğunu biliyorsanız, hangi satırlar olduklarını ve nereye ekleneceklerini de bilmeniz gerekir.

 

Herkese günaydın ve iyi günler!

Dün Uzman Danışmanımla ilgili bir karışıklık oldu. Düne kadar neredeyse bir aydır sorunsuz bir şekilde test ediliyordu, ancak akşama doğru aniden serbest marja bağlı risk hesaplaması düzgün çalışmayı durdurdu ve EA mümkün olan maksimum lotla pozisyon açmaya başladı. Bu tür "hediyeleri" hariç tutmak için belirli koşullar altında ticarete izin vermek için bir kontrol işlevi yazmaya karar verdim. Yazdım ve EA koduna ekledim. Bu işlevin yardımcı olup olmadığını veya yazarken başka bir şey olup olmadığını bilmiyorum, ancak Uzman Danışmanın çalışması normalleşti.

Saygıdeğer topluluğa talep!

Lütfen koda bakın ve gerçek bir hesapta işlem yapmak için bu tür "hediyeleri" hariç tutmak için işleve başka ne eklenmesi gerektiğini tavsiye edin?

bool Check_Trading()
  {
   bool canTrade=false;
   if(!AccountInfoInteger(ACCOUNT_TRADE_ALLOWED))
     {
      Print("Ошибка разрешения торговли для текущего счёта!", GetLastError());
      canTrade=false;
     }
   if(!AccountInfoInteger(ACCOUNT_TRADE_EXPERT))
     {
      Print("Ошибка разрешения торговли для эксперта!", GetLastError());
      canTrade=false;
     }
   if(!AccountInfoInteger(ACCOUNT_MARGIN_MODE)==ACCOUNT_MARGIN_MODE_RETAIL_HEDGING)
     {
      Print("Ошибка при проверке режима расчёта маржи для счёта с режимом хэдж!", GetLastError());
      canTrade=false;
     }
   if(!AccountInfoDouble(ACCOUNT_MARGIN_FREE))
     {
      Print("Ошибка при получении размера свободных средств для открытия позиции!", GetLastError());
      canTrade=false;
     }
   if(!SymbolInfoInteger(_Symbol,SYMBOL_TRADE_CALC_MODE)==SYMBOL_CALC_MODE_FOREX)
     {
      Print("Ошибка способа расчета прибыли и маржи для рынка Форекс по текущему символу!", GetLastError());
      canTrade=false;
     }
   if(!SymbolInfoDouble(_Symbol,SYMBOL_MARGIN_HEDGED))
     {
      Print("Ошибка расчета маржи для позиций по текущему символу для счёта с режимом хэдж!", GetLastError());
      canTrade=false;
     }
   if(!SymbolIsSynchronized(_Symbol))
     {
      Print("Ошибка синхронизации данных по текущему символу!", GetLastError());
      canTrade=false;
     }
   canTrade=true;
   return(canTrade);
  }

Saygılarımla, Vladimir.

 

Nasıl ve neye ihtiyacı olduğunu anlayamıyorum, TERMINAL_DATA_PATH içindeki Tester\Agent... klasöründen bir dosya alıyor ve okuyor, ancak TERMINAL_PATH içinde okumam gerekiyor ve mutlak yol kullanamıyorum.


 
mwwm #:

Nasıl ve neye ihtiyacı olduğunu anlayamıyorum, TERMINAL_DATA_PATH içindeki Tester\Agent... klasöründen bir dosya alıyor ve okuyor, ancak TERMINAL_PATH içinde okumam gerekiyor ve mutlak yol kullanamıyorum.

Test sırasında dosyalarla çalışmanız gerekiyorsa, bu amaçla tüm terminallerin ve aracıların ortak bir klasörünü kullanmak daha uygundur. Bunu yapmak için dosya açma işlemlerine FILE_COMMON bayrağını eklemeniz yeterlidir.

Gerekli dosyaları içine koymak için bu klasöre MetaEditor ana menüsünden ulaşabilirsiniz: DosyaOrtak veri klasörünü aç

 
Yuriy Bykov #:

Test sırasında dosyalarla çalışmak gerekiyorsa, bu amaçla tüm terminallerin ve aracıların ortak bir klasörünü kullanmak daha uygundur. Bunun için dosya açma işlemlerinde FILE_COMMON bayrağını eklemek yeterlidir.

Gerekli dosyaları içine koymak için bu klasöre MetaEditor ana menüsünden ulaşabilirsiniz: DosyaOrtak veri klasörünü aç

Teşekkür ederim!)

 
FYFRX #:

İlginç bir adamsın.

Yani böyle bir gösterge için yeterince hevesiniz var) https://c.mql5.com/1/237/vgif-ru-19978.gif

Ve yazma pratiği uğruna, can sıkıntısından veya başka nedenlerden dolayı RSI'ya iki satır kod eklemek istemezsiniz...

Bu benim eserim değil. "Office Romance" filmindeki Monna Lisa'yı hatırlıyor musunuz?

İki çizgiye gelince, size açıklamıştım.

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerini test etme üzerine forum.

MQL5 MT5 MetaTrader 5 yeni başlayanların soruları

Alexey Viktorov, 2023.01.30 07:17 AM

Birçok insanın bir programlama dili öğrenmeye başlamasının nedeni budur. Ve böylece hayali fikrinizi test edebilmeniz için birisinin yazmak için oturacağı ortaya çıkıyor. Elbette yazma pratiği uğruna, can sıkıntısından ya da başka bir nedenle yazabilecek böyle bir meraklı bulabilirsiniz ... Ama kabul ederseniz ve LS stratejisinden geçerseniz, yazmayı reddetmenin işe yaramayacağını fark ederseniz, o zaman aldatıldığınıza, karlı bir stratejiye sahip olduğunuza ve çalılıklara girdiğinize dair bir şüpheniz olacaktır. Ve kimin böyle bir tutuma ihtiyacı var? Bir strateji yayınlarsanız ve birisi ilgilenirse, şanslısınız demektir. Ama paranız için, herhangi bir heves ...

Bu arzularınızı ücretsiz kod yazma ile ilgili herhangi bir konuya yazın, mutlaka birileri yanıt verecektir. Muhtemelen ben de... Pek olası olmasa da 2-3 gün burada olmayacağım...
 
MrBrooklin ticarete izin vermek için bir kontrol işlevi yazmaya karar verdim. Yazdım ve EA koduna ekledim. Bu işlevin yardımcı olup olmadığını veya ben yazarken başka bir şey olup olmadığını bilmiyorum, ancak Uzman Danışmanın çalışması normalleştirildi.

Saygıdeğer topluluğun talebi!

Lütfen koda bakın ve gerçek bir hesapta işlem yapmak için bu tür "hediyeleri" hariç tutmak için işleve başka ne eklenmesi gerektiğini önerin?

Saygılarımla, Vladimir.

Vladimir, nasıl oldu da

   if(!AccountInfoDouble(ACCOUNT_MARGIN_FREE))

bool türüne dönüştürüldü

ACCOUNT_MARGIN_FREE

Bir pozisyon açmak için kullanılabilecek para yatırma para biriminde hesaptaki serbest fon miktarı.

çift


Gözüm buna takıldı. Gerisine bakmak bile istemiyorum...

 
Alexey Viktorov #:

Vladimir, bunu bool türüne nasıl dönüştürdün

ACCOUNT_MARGIN_FREE

Bir pozisyon açmak için mevduat para biriminde hesapta bulunan serbest fon miktarı

çift


Tesadüfen bulduğum şey bu. Geri kalanına bakmak bile istemiyorum....

Merhaba Alexey, şöyle düşünüyordum - eğer hesabında bir pozisyon açmak için mevcut para yatırma para birimindeki serbest fonlar yeterliyse, o zaman doğrudur. Şimdi bu değerin sadece hesaplamalar için olduğunu anlıyorum. İpucu için teşekkür ederim.

Saygılarımla, Vladimir.