[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 323

 
Diubakin :
Peki... NASIL YAPILIR? eğer bir sır değilse...
Bir yol var, kimseye söyleme. Bu korkunç bir sır.
Sitede bir Google araması yapın - standart olmayan bir TF sitesinde ticaret yapın:mql4.com ve "eş hacim (bağımsız) grafikte EA, vb.
Veya Zhunko'nun buna dayanamayıp sizin için çiğnemesini bekleyin :))
 
Diubakin :
Peki... NASIL YAPILIR? eğer bir sır değilse...

Bir sır değil. Burada hakkında çok şey yazılıp çiziliyor. Hikayenin nasıl oluşturulduğu önemli değil. Buradaki nokta, Uzman Danışmanın üzerinde çalışması için grafiği güncellemektir.

WinAPI kullanılarak yapılabilir. Burada defalarca anlatıldı. Kendi kitaplığımı yazdım. Burada yayınlandı .

Grafiğin çevrimdışı güncellemesini yönetme işlevlerine sahiptir. Herhangi bir komut dosyası veya uzman gerektirmez. Ama herkes için değil. Herkesin bir Uzman Danışmandan veya bir komut dosyasından veya bir göstergeden grafiği güncellemesi için kullanılabilen işlevler de vardır. Kullanımları daha zordur. Çünkü hangi programlarınızın zamanlamayı güncelleyeceğini bulmanız gerekecek. Örnekler test komut dosyasındadır.

 

Sevgili programcılar.

Mevcut çubukta hareketli ortalama seviyelerinin değerlerinin gösterimini nasıl ayarlayacağımı söyler misiniz?

Hareketli ortalamanın değerini değil, seviyelerinin değerlerini (MA menüsündeki "Seviyeler" sekmesinde yapılandırılan yukarı ve aşağı sapmalar) kastediyorum.

Böylece bu değerlerin kendileri MA seviyelerini takip eder ve değişir.

Çizim seçeneklerden biridir.

Şimdiden teşekkürler.



 
Diubakin :


Sırra gelince, zaten anladım). Makaleleri okudum, foruma baktım ve aramaya baktım. Standart dışı çizelgelerin test cihazına nasıl sıkıştırılacağı, nasıl oluşturulacağı yazıyor ama böyle bir çizelgede uzmanın gerçek zamanlı çalışabilmesi için ne yapacağıma dair bir örnek bulamadım .

WinAPI benim için karanlık bir orman. Oluşturucunun içinde veya mql4'teki uzmanınızın içinde bir şeyler yapmanın veya oluşturucuyu uzmanla birleştirmenin bir yolu var mı?

Cevaplar için teşekkürler.

Gizemden bahsettiğimde, arayışın büyük gizemini kastetmiştim. Bunda yatıyor. göstereceği malzemeleri OKUMANIZ gerekir. Zaten bağlantı vermekten korkuyorum, bitmiş metni alıntılıyorum.

09/03/2007

... Uzman Danışmanların çevrimdışı bir grafik üzerinde çalışması için şunları eklemeniz gerekir:

başlangıç başlangıcında:

int MT4InternalMsg = RegisterWindowMessageA("MetaTrader4_Internal_Message"); // EA'lar için gelen onay işareti

ilk PostMessageA'dan sonra

PostMessageA(hwnd,MT4InternalMsg,2,1); // EA'lar için gelen onay işareti

peki, WinUser32.mqh'de user32.dll işlevlerinin açıklamalarına aşağıdakini ekleyin:

int RegisterWindowMessageA(string lpString);

(bu çözüm Slava tarafından İngilizce forumunda önerildi)

 
Broker ile yazışmadan - "Çizelgeler piyasa hakkında bir fikir vermek için kullanılır. Güncellemeler için ..... suçlayamaz çünkü bunlar MT4 platformunu kullanan tüm brokerler için varsayılan olarak ayarlanmıştır." Bu nasıl anlaşılabilir ve komisyoncu ne demek istedi? MT4'ün hangi özelliklerinden bahsediyoruz? Hangi durumlarda o anda grafikte ve Piyasa İzleme penceresinde görüntülenen fiyat aynı anda hem piyasa hem de yürütülebilir olamaz? Senden, ifadenin özünü anlamama yardım etmeni rica ediyorum. OrderSend işlevine giden bağlantıları tahmin ediyorum ve bir anlaşma açmak için kullanılan MTS kodunu veriyorum:

Yeniler();

bilet=OrderSend(Symbol(),OP_SELL,0.1,NormalizeDouble(Teklif,Digits),0,NormalizeÇift(Ask+15*Puan,Rakamlar),0,"test",8,0,Kırmızı);

Geliştiricilerin yorumları için çok minnettar olurum.
 

granit77 :
Когда я говорил о тайне, то имел в виду великую тайну поиска. Она заключается в том. что надо ПРОЧИТАТЬ материалы, на которые он покажет. Ссылки уже боюсь давать, привожу готовый текст.

09/03/2007

... Uzman Danışmanların çevrimdışı bir grafik üzerinde çalışması için şunları eklemeniz gerekir:

başlangıç başlangıcında:

int MT4InternalMsg = RegisterWindowMessageA("MetaTrader4_Internal_Message"); // EA'lar için gelen onay işareti

ilk PostMessageA'dan sonra

PostMessageA(hwnd,MT4InternalMsg,2,1); // EA'lar için gelen onay işareti

peki, WinUser32.mqh'de user32.dll işlevlerinin açıklamalarına aşağıdakini ekleyin:

int RegisterWindowMessageA(string lpString);

Kitaplığımın bu kod yerine bir işlevi var.
 
RefreshRates(); yardımcı olur mu? Biletten önce en azından yeniden teklifleri azaltmak için biraz?
 
Shniperson :
RefreshRates(); yardımcı olur mu? Biletten önce en azından yeniden teklifleri azaltmak için biraz?


Duruma göre. Arka arkaya iki sipariş veriyorsanız, ikinci siparişi vermeden önce RefreshRates() öğesini çağırmak mantıklıdır. Bakın, sipariş açmak için sunucuya bir sipariş gönderiyorsunuz. Sunucu yanıt verirken belirli bir süre geçer. Bu süre boyunca alıntılar değişebilir, bu nedenle sunucu yanıt verir vermez terminaldeki verileri güncelleyen RefreshRates() işlevini çağırmanız gerekir. Artık bir sonraki siparişi açmak için sipariş verebilirsiniz. Sadece sinyali kontrol edip hemen bir sipariş verirsek, RefreshRates()'i çağırmanın bir anlamı yoktur. Eh, çünkü başlatma işlevi yeni bir onay işaretinin gelmesiyle çağrılır ve danışman bir sinyali kontrol edene kadar geçen süreyi ihmal etmek oldukça mümkündür.

Ama biletin nesi var? Ticket, siparişin sunucudaki seri numarasıdır...

 
Ben bilet=SiparişGönder(......) demek istedim
 
Shniperson :
Yani, ticket=OrderSend(......) demek istedim

Ve sana ne söylediler? ...