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

 
VOLDEMAR :
İşte o zaman gerçek hayatta buna başladığınızda "adım* noktası > cari zarar olur, o zaman kar size gelir" karınızın nasıl sabit bir eksiye dönüştüğünü göreceksiniz... Brokerin çalışmasından dolayı .. . Bilerek almak istedim çünkü zaten kontrol edildi ..........
sen garipsin Benim mesajım, sorunuzun başka bir cevabı. Bu sadece başka bir yol. Ama görsel olarak daha anlaşılır.
 
Acemi bir programcıya OrderSelect işlevini kullanarak son kapatılan anlaşmayı nasıl seçeceğini söyleyebilir misiniz? Bunu denedim: OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), ama görünüşe göre bu şekilde hiçbir sipariş seçilmemiş...
 
birisi lütfen bu danışman fikrini uygulayın:

Fikir numarası 5 TS - Kendi Modeli (Örnek). Bir de çizim var. TS ve ticaret kriterleri basit ve

iyi bir programcı çok zaman almaz. Sonuçları görmekle ilgilenen kimse yok mu?
 
Lütfen bana kimin bildiğini söyleyin - 1: 1 kaldıraçla nasıl test yapılır?
 

1:1 gibi bir kaldıraç oranıyla bir demo hesabı açmayı deneyin. Ve test edin.

Belki işe yarar?


 
Moslift :
Acemi bir programcıya OrderSelect işlevini kullanarak son kapatılan anlaşmayı nasıl seçeceğini söyleyebilir misiniz? Bunu denedim: OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), ama görünüşe göre bu şekilde hiçbir sipariş seçilmemiş...


Buraya bakın: https://www.mql5.com/ru/forum/131859

-Sayfa#4
GetTypeLastClosePos - Son kapatılan pozisyonun türünü döndürür veya -1
GetTypeLastOpenPos - Son açık pozisyonun türünü döndürür veya -1
isCloseLastPosByStop - Durdurarak son pozisyonu kapatmak için bayrağı döndürür
isCloseLastPosByTake - Al ile son pozisyonu kapatmak için bayrağı döndürür.
isLossLastPos - Son konum kaybı bayrağını döndürür.
isTradeToDay - Bugünün ticaret bayrağını döndürür
NumberOfBarCloseLastPos - Son konumun veya -1'in kapanış çubuğunun numarasını döndürür.
NumberOfBarOpenLastPos - Son pozisyon açık çubuğunun veya -1'in numarasını döndürür.
NumberOfLossPosToday - Bugün kapatılan kaybeden pozisyonların sayısını verir.
PriceCloseLastPos - Son kapatılan pozisyonun kapanış fiyatını verir.

 
Moslift :
Acemi bir programcıya OrderSelect işlevini kullanarak son kapatılan anlaşmayı nasıl seçeceğini söyleyebilir misiniz? Bunu denedim: OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), ama görünüşe göre bu şekilde hiçbir sipariş seçilmemiş...

Şu şekilde deneyin:

   int       i, j;
   datetime t;
   for (i= 0 ; i< OrdersHistoryTotal (); i++) {           // Цикл по закрытым ордерам терминала
       if ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)) { // Если выбран ордер...
         if ( OrderType ()> 1 )               continue ;   // ... если его тип не Buy и не Sell, переходим к следующему...
         if ( OrderSymbol ()!= Symbol ())     continue ;   // ... если его символ не соответствует символу графика - к следующему...
         if ( OrderMagicNumber ()!=Magic)   continue ;   // ... если его магик не соответствует магику советника (в переменной Magic) - к следующему
         if ( OrderCloseTime ()>t) {                     // ... если время его закрытия больше предыдущего
            t= OrderCloseTime ();                       // ... сохраним новое наибольшее время закрытия, ...
            j=i;                                       // ... сохраним индекс ордера в массиве закрытых ордеров
            }                   
         }
      }
   if ( OrderSelect (j,SELECT_BY_POS,MODE_HISTORY))     // На этом этапе j содержит индекс последнего закрытого ордера
       Print ( "Выбран последний закрытый ордер с тикетом " , OrderTicket ());

Döngüde yalnızca Al veya Sat seçeneğinin işaretlendiğini lütfen unutmayın. Umarım buna dayanarak diğer sipariş türlerinden bir seçim yapabileceksiniz.

Not ... "dizlerimin üstüne" yazdım bir yerlerde bir hata kaçırmış olabilirim ...

 

Lütfen bana bu işlevin neden çalışmadığını ve nasıl çalıştırılacağını söyleyin?


nomer_sdelki=OrderSend( Symbol() ,OP_SELL,1,Bid,3, Bid-10*Puan,Ask+10*Puan,"Siparişim #"+1,16384,0,Yeşil);

-------------------------------------------------- -------------------------------------------------- --------------------

Ve işte böyle çalışıyor!

nomer_sdelki=OrderSend(Symbol(),OP_SELL,coefficent,Bid,3,0,0,"Siparişim #"+1,16384,0,Yeşil);

yani stoplar ayarlanmadığında çalışır.

-------------------------------------------------- -------------------------------------------------- --------------------------

Bu fonksiyon da çalışmıyor, nasıl düzeltilir?

SiparişKapat(nomer_sdelki,katsayı,Teklif,3,Kırmızı);


-------------------------------------------------- -------------------------------------------------- ----------------------------------



 
leonid553 :

1:1 gibi bir kaldıraç oranıyla bir demo hesabı açmayı deneyin. Ve test edin.

Belki işe yarar?


Senks (Teşekkürler) :))
 

Bazı mucizeler...

Bir mesaj vardı ve hayır...

Cevap: Gerekli mi?

 // ----------------- SchBuyLs() ---------------------------------------------
//  Функция возвращает суммарный лот Бай-ордеров 
//----------------------------------------------
double SchBuyLs_b() {
   double SchBuyLs= 0 ;
   int i;
   string SMB= Symbol ();
   for (i= OrdersTotal ()- 1 ; i>= 0 ; i--) {                   //Начало цикла
       if (! OrderSelect (i, SELECT_BY_POS)) WriteError(i);
       else   {                                             //начало работы с выбранным ордером
         if ( OrderSymbol ()!=SMB)     continue ;
         if ( OrderType ()==OP_BUY)    SchBuyLs+= OrderLots ();
         }                                               //конец работы с выбранным ордером
      }                                                  //Конец цикла
   return (SchBuyLs);                                     // При ошибке выбора ордера функция вернёт ноль
}
// ----------------------------------------------------------------------------