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

 
tommy27 :
Teşekkürler, hem Close aracılığıyla hem de tavsiye ettiğiniz gibi yaptım:
ancak sonuç yalnızca yeni bir çubuk göründüğünde güncellenir, ancak her onay işaretindeki değişiklikleri görmek ve düzeltmek istiyorum.

danışman döngülü değilse, sonuç her onayda değişecektir.
 

Hepinize teşekkürler, her şey ayrı ayrı çalışıyor:

 //+------------------------------------------------------------------+
//|                                                        Delta.mq4 |
//|                                                          tommy27 |
//|                                                  tommy27@mail.ru |
//+------------------------------------------------------------------+
#property copyright "tommy27"
#property link       "tommy27@mail.ru"

double 
       StartPrice1,
       Delta1,
       Price00;


//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
   Price00 = 5000 ;
StartPrice1 =   iClose ( 0 , 0 , 0 );
//StartPrice1 = Close[0];
Delta1 = MathAbs (Price00 - StartPrice1);
//if (Delta1>1000) Delta1=0;
Comment (Delta1);
Print ( "Raznica= " ,Delta1);
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+

ama ana kodda, sadece bar kapandığında dikkate alıyor, ben çözeceğim.

 
PapaYozh :

danışman döngülü değilse, sonuç her onayda değişecektir.
Teşekkür ederim.
 
OrderSelect'te () iki seçenek vardır:
MODE_TRADES - emir, açık ve bekleyen emirler arasından seçilir,
MODE_HISTORY - emir, kapatılan ve silinen emirler arasından seçilir.

- MODE_TRADES'in yalnızca OrdersTotal() ve MODE_HISTORY - yalnızca OrdersHistoryTotal() ile kullanıldığını doğru anlıyor muyum?
Eğer öyleyse, neden onlara ihtiyaç duyuluyor?
Teşekkür ederim!
 
chief2000 :
OrderSelect'te () iki seçenek vardır:
MODE_TRADES - emir, açık ve bekleyen emirler arasından seçilir,
MODE_HISTORY - emir, kapatılan ve silinen emirler arasından seçilir.

- MODE_TRADES'in yalnızca OrdersTotal() ve MODE_HISTORY - yalnızca OrdersHistoryTotal() ile kullanıldığını doğru anlıyor muyum?
Eğer öyleyse, neden onlara ihtiyaç duyuluyor?
Teşekkür ederim!


Doğru anlıyorsun.

İkinci sorunuz net değil. Eğer pozisyonuna göre bir emir seçerseniz, o zaman toplam emir sayısını bilmeniz gerekir.

 
PapaYozh :


Doğru anlıyorsun.

İkinci sorunuz net değil. Eğer pozisyonuna göre bir emir seçerseniz, o zaman toplam emir sayısını bilmeniz gerekir.

Bu parametrelerin her ikisi de (MODE_TRADES ve MODE_HISTORY) yalnızca SELECT_BY_PO durumunda kullanılır, ancak tamamen kaldırılabilirler (sırasıyla OrdersTotal() ve OrdersHistoryTotal() için MT4'te varsayılanı kullanın).
Bu önemli değil, benim için asıl mesele ilk sorunun cevabıydı.
Teşekkür ederim!
 

alsu, son 10 dakika içinde fiyat 20 puandan fazla artmışsa alım aç; Son 10 dakika içinde fiyat 20 puandan fazla düşerse satış açın.

ve eğer zor değilse, bir görev daha: Mevcut fiyat bir önceki çubuğun yüksekliğinden biraz daha yüksekse bir alış açın, mevcut fiyat bir önceki çubuğun en düşük seviyesinden biraz daha düşükse bir satış açın.

PS Alış ve satış açma kodu zaten baykuşun içinde olduğu için onları anlatmaya gerek yok... Ben daha çok yukarıda anlatılan açılış koşullarını nasıl doğru yazacağımla ilgileniyorum...

 
oDin48 :

alsu, son 10 dakika içinde fiyat 20 puandan fazla artmışsa alım aç; Son 10 dakika içinde fiyat 20 puandan fazla düşerse satış açın.

Tam olarak seviyenin aşıldığı anda veya 10 dakika sonra açılır mı?)))


ve eğer zor değilse, bir görev daha: Mevcut fiyat bir önceki çubuğun yüksekliğinden biraz daha yüksekse bir alış açın, mevcut fiyat bir önceki çubuğun en düşük seviyesinden biraz daha düşükse bir satış açın.

 extern int level = 10; //в пунктах

....
int start ()
{
...

   RefreshRates ();

   if (Bid>High[ 1 ]+level*Point)
   {
      //BUY
   }

   if (Bid<Low[ 1 ]-level*Point)
   {
      //SELL
   }
...
}
 

alsu, tam kavşakta, zamanı kontrol edin ve zaman aralığına girerse bir anlaşma yapın.

Teşekkür ederim. Şimdi deneyeceğim.

 
oDin48 :

alsu, tam kavşakta, zamanı kontrol edin ve zaman aralığına girerse bir anlaşma yapın.

Bu versiyonda, teoride, son 10 dakika için tik geçmişini hatırlamanız gerekiyor... kod önemsiz olmayacak