Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 371

 
SpikeOne :


İlk verilerde, siparişler arasındaki adımın int değeriyle gösterildiği ve 1.7'yi belirlediğim bir jamb =) bulmuş gibiyim, ikiye katlandı, iyi çalıştı =)


Eh, sağlıklı)))) bir hata bulunca anlarsın. her şeyin daha kolay olduğunu, ölümsüz sanmıştın)
 
Ekburg :

o zaman ben asistan değilim) tüm danışmanı sıralamanız gerekir.

Genel olarak, her şeyi ikiye katladım, şu anda iyi çalışıyor, kalan noktaları test etmem gerekiyor =) Danışmanı kar toplamaya zorlarsam, gerekirse düzenleyebilirim =)

Ve yardımın için teşekkürler, sen olmasaydın sorunun ne olduğunu anlayamazdım =) Umursamak istedim =) neden işe yaramadığını anlamadı =) iyi ki yapmamış' t puanı =)

 
SpikeOne :

Genel olarak, her şeyi ikiye katladım, şu anda iyi çalışıyor, kalan noktaları test etmem gerekiyor =) Danışmanı kar toplamaya zorlarsam, gerekirse düzenleyebilirim =)

Ve yardımın için teşekkürler, sen olmasaydın sorunun ne olduğunu anlayamazdım =) Umursamak istedim =) neden işe yaramadığını anlamadı =) iyi ki yapmamış' t puanı =)


Olabilir neden olmasın)

Evet, hiçbir şey için)

Yürüyen yola hakim olur, ilk zamanlar bende de öyle anlar oldu, kafayı yedim ama sorunu çözünce biraz tatmin oluyor ve bu duygu paha biçilemez)

 
Sinyal 1'den sonraki süreyi kaydetmek ve sinyal 2 gelene kadar değiştirmemek gerekir, sinyal 2'yi bekleme sürecinde sinyal 1 tekrar tekrar ortaya çıkacaktır, ancak ilk sinyal 1'in alındığı andan itibaren süre değişmeden kalmalıdır. .
 
Forexman77 :
Sinyal 1'den sonraki süreyi kaydetmek ve sinyal 2 gelene kadar değiştirmemek gerekir, sinyal 2'yi bekleme sürecinde sinyal 1 tekrar tekrar ortaya çıkacaktır, ancak ilk sinyal 1'in alındığı andan itibaren süre değişmeden kalmalıdır. .

 int sm;
datetime data;
if (sm== 0 ) if (сигнал 1 == true ) data= TimeLocal (); sm= 1 ;
if (sm== 1 ) if (сигнал 2 == true ) data= TimeLocal ();
 
extern bool test= false ;   // откл объектов при тесте
extern int prof= 4 ;     // уровень профита
extern int chag= 3 ;     // шаг между ордерами
extern int risk= 0 ;         //уровень риска
extern double lot = 0.01 ; // начальный лот
extern double k_lot= 2 ; // увеличение объема
extern double lot_max= 100 ; // максимальный лот
//=====================================================//
int kn= 20 ;   // величина вертикальной шкалы
int magic = 37649 ; 
extern double   BeginHour = 3 ;
bool result;
bool fail= false ; 
double gg= 0 ;
int k,c,b_ind,s_ind,objtot,er;
double buy_prs,sel_prs,buy_ind,sel_ind,or_bu,or_sl,prf_b,prf_s,b_pr,s_pr,b2_cls,s2_cls;
string nh;
//нннннннннннннннннннннннннннн//
int init()
  {
//----
 
if ( Digits == 2 ) k= 1 ;
if ( Digits == 3 ) k= 10 ;
if ( Digits == 4 ) k= 1 ;
if ( Digits == 5 ) k= 10 ;
nh= StringSubstr ( Symbol (), 2 , 2 );
 
 if (! IsTesting ()){
    buy_prs= GlobalVariableGet (nh+ "_buy_prs" ); buy_ind= GlobalVariableGet (nh+ "_buy_ind" );
    sel_prs= GlobalVariableGet (nh+ "_sel_prs" ); sel_ind= GlobalVariableGet (nh+ "_sel_ind" );}
 
c= 0 ;
chag=chag*k;
prof=prof*k;
//нннннннннннннннннннннннннннн//
   return ( 0 );
  }
//============================================//
int start()
  {
//----
int i,y,tick_s,tick_b,tick_slm,tick_blm;
double prov,price_b,price_s,prof_b,prof_s,lot_b,lot_s,b_cls,s_cls,abc;
bool mod_b= false ,mod_s= false ;
 
//=================//
   if ( Bars -c> 1 ) c= 0 ;
   i= Bars -c; c= Bars ;
//==================================//   
 if (! IsTesting ()){ for (y= 0 ;y< OrdersTotal ();y++)
   { OrderSelect (y, 0 , 0 ); if ( OrderSymbol ()!= Symbol ()|| OrderMagicNumber ()!=magic||( OrderType ()!= 0 && OrderType ()!= 1 )) continue ;
      prov=prov+ OrderProfit ()+ OrderSwap ()+ OrderCommission ();}
   if (prov< 0 &&prov< GlobalVariableGet (nh+ "_max_prov" )) GlobalVariableSet (nh+ "_max_prov" ,prov);}
 
//=================================================//
     for (y= 0 ;y< OrdersTotal ();y++){ OrderSelect (y, 0 );
       if ( Symbol ()!= OrderSymbol ()|| OrderMagicNumber ()!=magic) continue ; 
       if ( OrderType () == 0 || OrderType () == 1 ) abc=abc + OrderProfit () + OrderSwap () + OrderCommission ();
     
       if ( OrderType ()== 0 ){ if (prf_b!= OrderTakeProfit () && prf_b!= 0 ) mod_b= true ; prf_b= OrderTakeProfit ();}
       if ( OrderType ()== OP_BUY && tick_b< OrderTicket ()) {
       tick_b= OrderTicket ();
       price_b= OrderOpenPrice ();
       lot_b= OrderLots ();
       prof_b= OrderTakeProfit ();}
 
       if ( OrderType ()== 1 ){ if (prf_s!= OrderTakeProfit () && prf_s!= 0 ) mod_s= true ; prf_s= OrderTakeProfit ();}      
       if ( OrderType ()== OP_SELL && tick_s< OrderTicket ()) {
       tick_s= OrderTicket ();
       price_s= OrderOpenPrice ();
       lot_s= OrderLots ();
       prof_s= OrderTakeProfit ();} 
 
       if ( OrderType ()== OP_BUYLIMIT )  tick_blm = OrderTicket ();
       if ( OrderType ()== OP_SELLLIMIT ) tick_slm = OrderTicket ();}
//=====================================================//
   if ( Ask >buy_prs && or_bu<= 0 ) {buy_prs= Ask ; buy_ind= Ask ;}
   if (( Ask <buy_prs && Ask <buy_ind) || buy_ind== 0 ) buy_ind= Ask ;
   b_cls=buy_ind+ MathFloor (prof+chag/ 2 )* Point ;
   or_bu= MathFloor ((buy_prs-buy_ind)/ Point /chag); 
   if ( Bid >=b_cls && or_bu> 0 ){buy_prs= Ask ; buy_ind= Ask ; or_bu= 0 ;}
   if (tick_b== 0 && b_ind> 0 ){buy_prs= Ask ; buy_ind= Ask ; or_bu= 0 ;}
 
   if (( Bid <sel_prs||sel_prs== 0 ) && or_sl<= 0 ) {sel_prs= Bid ; sel_ind= Bid ;}
   if ( Bid >sel_prs && Bid >sel_ind) sel_ind= Bid ;
   s_cls=sel_ind- MathFloor (prof+chag/ 2 )* Point ;
   or_sl= MathFloor ((sel_ind-sel_prs)/ Point /chag);
   if ( Ask <=s_cls && or_sl> 0 ){sel_prs= Bid ; sel_ind= Bid ; or_sl= 0 ;}
   if (tick_s== 0 && s_ind> 0 ) {sel_prs= Bid ; sel_ind= Bid ; or_sl= 0 ;}
 
 if (! IsTesting ()){
   GlobalVariableSet (nh+ "_buy_prs" ,buy_prs); GlobalVariableSet (nh+ "_buy_ind" ,buy_ind);
   GlobalVariableSet (nh+ "_sel_prs" ,sel_prs); GlobalVariableSet (nh+ "_sel_ind" ,sel_ind);} 
//===============================
   if (tick_b== 0 && tick_blm!= 0 ) OrderDelete (tick_blm);
   if (tick_s== 0 && tick_slm!= 0 ) OrderDelete (tick_slm);
   if ( AccountBalance ()>gg)
   {
    gg= AccountBalance ();
   }
   if ( Hour () >= BeginHour )
{
if ( AccountEquity ()>=gg)
   {
 //if(AccountEquity()>=740)
   // {
 
   for ( int zx= OrdersTotal (); zx+ 1 >= 0 ; zx--)
      {
       if ( OrderSelect (zx, SELECT_BY_POS , MODE_TRADES )== true )
       OrderDelete ( OrderTicket ());
      }
   while ( OrdersTotal ()> 0 )
      {
       if ( OrderSelect ( 0 , SELECT_BY_POS , MODE_TRADES ))
         {
         if ( OrderType ()== OP_BUY ) result= OrderClose ( OrderTicket (), OrderLots (), NormalizeDouble ( MarketInfo ( OrderSymbol (), MODE_BID ), MarketInfo ( OrderSymbol (), MODE_DIGITS )), 3 ,CLR_NONE);
         if ( OrderType ()== OP_SELL ) result= OrderClose ( OrderTicket (), OrderLots (), NormalizeDouble ( MarketInfo ( OrderSymbol (), MODE_ASK ), MarketInfo ( OrderSymbol (), MODE_DIGITS )), 3 ,CLR_NONE);
         if ( OrderType ()== OP_BUYLIMIT || OrderType ()== OP_BUYSTOP || OrderType ()== OP_SELLLIMIT || OrderType ()== OP_SELLSTOP )
         OrderDelete ( OrderTicket ());
         if (result!= TRUE )
            {
            er=GetLastError();
             Print ( "LastError = " ,er, " " , Symbol ());
            }
         else er= 0 ;
         }
       else Print ( "Error when order select " , GetLastError());
      }
   if ( OrdersTotal ()== 0 ) fail= true ;
   }
}
if (fail== true ) return ( 0 );
 
   if (or_bu==risk && tick_b== 0 ) open( 0 );
   if (or_sl==risk && tick_s== 0 ) open( 1 );

genel olarak, işte kod, başlangıca eklenir, tüm kısım aşağıda verdiğim yere kadar değiştirilir, işte başlangıcı eklemeniz gereken danışmanın kendisi https://www.mql5 .com/tr/kod

gece yaklaşık 00:00'da başlıyor ve belirli bir zamana kadar işlem görüyor, ardından esnafı ve danışmanı kapatıyor.

 if (or_bu==risk && tick_b== 0 ) open( 0 );
if (or_sl==risk && tick_s== 0 ) open( 1 );
 
Ekburg :


Biraz daha zor gerekiyor. Bir değişken sinyal 1'e bağlıdır, bu nedenle sinyal 2 olmadığında, sinyal 1'in kullandığı veriler güncellenerek değişken değiştirilir, ancak değişkenin bir kez değişmesine ihtiyacım var. Değişkende sadece sinyal 2'den sonra değişiklikler olur. Anahtar 1 kısa bir süre tetiklenirse, bir başlatılırsa ve anahtar 2 açılana kadar başka hiçbir şey değişmez.Ancak, anahtar 1 açmak için belirli verileri kullandığından, bunları tekrar işleyecektir, ancak yalnızca birine ihtiyaç vardır. bir Zamanlar.

 
SpikeOne :

genel olarak, işte kod, en başa eklenir, tüm kısım aşağıda verdiğim yere kadar değiştirilir, işte başlangıcı eklemeniz gereken danışmanın kendisi https://www.mql5 .com/tr/kod

gece yaklaşık 00:00'da başlıyor ve belirli bir zamana kadar işlem görüyor, ardından esnafı ve danışmanı kapatıyor.


Ve ne?! İşler?:)
 
Forexman77 :

Biraz daha zor gerekiyor. Değişken sinyal 1'e bağlıdır, bu nedenle sinyal 2 olmadığında, sinyal 1'in kullandığı veriler güncellenerek değişken değiştirilir, ancak değişkenin bir kez değişmesine ihtiyacım var. Değişkende sadece sinyal 2'den sonra değişiklikler olur. Anahtar 1 kısa bir süre tetiklenirse, bir başlatılırsa ve anahtar 2 açılana kadar başka hiçbir şey değişmez.Ancak, anahtar 1 açmak için belirli verileri kullandığından, bunları tekrar işleyecektir, ancak yalnızca birine ihtiyaç vardır. bir Zamanlar.


Sana temeli verdim, devam et, devam et! Bu nasıl bir tembellik.. Anlatıldığı gibi ben de yazdım teşekkür bile etmediler ;)
 
Ekburg :

Sana temeli verdim, devam et, devam et! Bu nasıl bir tembellik.. Anlatıldığı gibi yazdım, teşekkür bile etmediler ;)
Teşekkür ederim! Temelleri kendim biliyorsam)