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

 

Hey ! Soru, nesnenin yalnızca açıklaması hakkında bilgimiz varsa, nesnenin manuel olarak silindiğini nasıl öğreneceğimizdir. yani adı bilinmeyen bir nesne var bu nesneye kar al iliştirilmiş, nesne silinirse kar al kaldır, bu arada biz nesnenin adını bilmiyoruz....

Belki nesnenin adını değiştirmenin bir yolu vardır????

 

Lütfen danışmanı geliştirmeme yardım edin!!!Bir siparişin bir sinyal geldiğinde, diğerinin bir sonrakinin gelmesiyle vb. açılmasını, açık sipariş olup olmadığına bakılmaksızın vb.

Bana neyin yanlış olduğunu söyle!!!

 m0= iMA ( NULL , 0 ,PeriodMA, 0 , MODE_SMA , PRICE_CLOSE , 0 );
    m1= iMA ( NULL , 0 ,PeriodMA, 0 , MODE_SMA , PRICE_CLOSE , 1 );
    lwma= iMA ( NULL , 0 ,PeriodLWMA, 0 , MODE_LWMA , PRICE_CLOSE , 0 );
    lwma1= iMA ( NULL , 0 ,PeriodLWMA, 0 , MODE_LWMA , PRICE_CLOSE , 1 );
    sar= iSAR ( NULL , 0 ,step,maximum, 0 );
    sar1= iSAR ( NULL , 0 ,step,maximum, 1 );
//+------------------------------------------------------------------+
   
      Lots= NormalizeDouble (AccountFreeMargin(), 0 )*MaxRisk/ 1000 ;
     if (Lots< 0.01 ) 
     return (Lot);
//--------------------------------------------------------------------
    balans= NormalizeDouble (AccountFreeMargin(), 2 );
//--------------------------------------------------------------------
   total= OrdersTotal ();
   if ( OrdersTotal ()>= 0 )
     {
   x= 1 ;
   x++;  
//==========================Медленный==================================
   if ( m1>lwma1 && m0<lwma && balans> 0 && total<x)
     {
     ticket= OrderSend ( Symbol (),OP_SELL,Lots,Bid, 3 ,Ask+sl* Point ,Ask-tp* Point , "0" ,Magik, 0 ,Red);
     }
   if (ticket> 0 )
     {
     Alert ( "Продажа №" ,ticket, "\n" , Symbol ());
     return ( 0 );
     }
//-------------------------------------------------------------------- 
   if ( m1<lwma1 && m0>lwma && balans> 0 && total<x)
    {
      ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 3 ,Bid-sl* Point ,Bid+tp* Point , "0" ,Magik, 0 ,Blue);
     }
   if (ticket> 0 )
     {
       Alert ( "Покупка № " ,ticket, "\n" , Symbol ());
       return ( 0 );  
     }
//========================Быстрый=====================================
   
     if (sar1<Bid && sar>Ask && balans> 0 && total<x)
      {
       ticket= OrderSend ( Symbol (),OP_SELL,Lots,Bid, 3 ,Ask+sl1* Point ,Ask-tp1* Point , "0" ,Magik1, 0 ,Red); return ;
      }
     if (ticket> 0 )
      {
       Alert ( "Продажа №" ,ticket, "\n" , Symbol ());
       return ( 0 );
      }
//---------------------------------------------------------------------
   if (sar1>Ask && sar<Bid && balans> 0 && total<x)
      {
      ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 3 ,Bid-sl1* Point ,Bid+tp1* Point , "0" ,Magik1, 0 ,Blue);
      }
   if (ticket> 0 )
     {
         Alert ( "Покупка №" ,ticket, "\n" , Symbol ());
         return ( 0 );
        }
       }
 

çıkmaz sokak.....

if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); işaret=1; bayrak=0; }

if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); bayrak=1; flagg=0; }

Yazdır (bayrak, bayrak);

Ma_1 - kısa
Ma_2 - uzun

Ma_1>Ma_2 ile haber.wav'ı durmadan bip sesi çıkarır ve 0 1 yazdırır (yani flag=0 flagg=1)

ama nasıl olur da flagg=1 olduğunda koşul (Ma_1>Ma_2 && flagg==0) yerine getirilir ve {PlaySound("news.wav") geçer ???

 
Herkese iyi günler, ilk öz sermaye tutarının belirli bir yüzdesine ulaştıktan sonra tüm pozisyonları kapatacak şekilde danışmanı yeniden düzenlemem gerekiyor, yani birden fazla sipariş açık değilse, örneğin özkaynak 1000 ve % öz sermaye %5 olarak ayarlandı, yani tüm pozisyonları 1050 özsermaye ile kapatacak şekilde, EA'ya global bir değişken yazmasını sağladım ve bundan değeri okuyup pozisyonları kapatsın, ancak EA istemiyor kapanıyor ve bakiyenin arttığı ve öz sermayenin %5'inden kapandığı ortaya çıkıyor, özsermaye değeri artık 1050 değil ve bazen çok daha fazlasına ihtiyaç duyuluyor bazen çok beklemeniz gerekiyor ya da fiyatın yön değiştirdiği ortaya çıkıyor ve kar yerine zarar edersiniz, küresel değişimlerle karşılaşan ve bilenlere yardım edin!!! Cevap için şimdiden teşekkürler.
Dosyalar:
 
İyi akşamlar! doğru anladıysam söyle
iStokastik
mod
K çizgisi mi yoksa D çizgisi mi demek istiyorum? Ve, 0 K ve 1 D'dir?
 

Ve global değişkenler olmadan bu seçeneğe bakın.

 if (Profit>AccountEquity( )*koefitsientudaleniya){  
   int Total= OrdersTotal ();
     for ( i= OrdersTotal ()- 1 ;i>= 0 ;i--){
   OrderSelect (i, SELECT_BY_POS, MODE_TRADES);
   if (OrderSymbol() != Symbol ()) continue ; 
   if (OrderMagicNumber() != 450 ) continue ;
   if (OrderType()==OP_SELL) {
  OrderClose(OrderTicket(),OrderLots(),Ask, 6 ,Red); Print ( " i " , i, "  GetLastError()CloseOP_SELL " , GetLastError ()  );}
   if (OrderType()==OP_BUY)  {
  OrderClose(OrderTicket(),OrderLots(),Bid, 6 ,Red); Print ( " i " , i, "  GetLastError()CloseOP_BUY " , GetLastError ()  );}}} и виличины, закрываем все ордера!
//----
 
 
Evet, arabaların değişmesinden önce sinyal olmamalı !! Gibi .. Muhtemelen, tüm kodu görün! Bilmiyorum, ben senin gördüğün gibi görmüyorum...
 
bu yüzden danışman kâr +'ya gidene kadar bekler sonra kapanır ve danışmana açık emir olmadığında öz sermayenin değerini hatırlaması gerekir, örneğin 1000 ve yazdığım gibi % -5 ve özsermaye değeri tüm pozisyonlar kapatıldığında 1050 olur ve ortaya çıktığı gibi, bazı emirler kapanır ve bakiye büyür ve kâr genel emirlerden eksi olur ve danışman kâr +'ya düşene kadar bekler ve ardından tüm pozisyonları kapatır
 
lottamer :

çıkmaz sokak.....

if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); işaret=1; bayrak=0; }

if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); bayrak=1; flagg=0; }

print(bayrak,bayrak);

Ma_1 - kısa
Ma_2 - uzun

Ma_1>Ma_2 ile haber.wav'ı durmadan bip sesi çıkarır ve 0 1 yazdırır (yani flag=0 flagg=1)

ama nasıl olur da flagg=1 olduğunda koşul (Ma_1>Ma_2 && flagg==0) yerine getirilir ve {PlaySound("news.wav") geçer ???


Her koşul için bayrakların durumunu ayrı ayrı yazdırın. Bunu yapıyorsunuz çünkü koşullar ikinci bayrağın durumunu dikkate almıyor.

Not: Print ("flag=", flag," flagg=", flagg );

 

Demoda böyle bir robotum var. Yazma fikrinin nasıl ortaya çıktığını tam olarak hatırlıyorum.

if(Kar>HesapBalance()*koefitsientudaleniya){
int Toplam=SiparişToplam();
for( i=OrdersTotal()-1;i>=0;i--){
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol() != Symbol()) devam ediyor;
(OrderMagicNumber() != 450) devam ederse;
if(OrderType()==OP_SEL) {
OrderClose(OrderTicket(),OrderLots(),Ask,6,Red);Print(" i " , i," GetLastError()CloseOP_SELL ", GetLastError() );}
if(OrderType()==OP_BUY) {
OrderClose(OrderTicket(),OrderLots(),Bid,6,Red);Print(" i " , i," GetLastError()CloseOP_BUY ", GetLastError() );}}} // Kar bir değerden büyükse gebe kaldık, tüm siparişleri kapat!
//----

Ya da eski yoldaşların tavsiye etmesine izin verin ..