MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 91
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Fiyata göre sıralamanız gerekir, çünkü boyuta göre arama yapamazsınız, ızgara çok partili olabilir ve en büyüğü veya en küçüğünü bulacaksınız, ancak ilk ve son değil
Marina'nın yayınladığı fonksiyondan bahsediyorum.
Orada, son siparişin tanımı zamana göre yapılır .
Marina'nın yayınladığı fonksiyondan bahsediyorum.
Orada, son siparişin tanımı zamana göre yapılır .
Çünkü ben böyle çağırırım
Sevgili programcılar! Bu sorunu çözmeye yardımcı olun. EA, M15'te bir ticarete girer, ancak aynı zamanda H1'den de koşullar alır. H1'deki koşullar karşılandığında, M15'te birden fazla giriş noktası olabilir. Aslında sorun şu ki, H1'deki koşullar tam tersi değişene kadar kendinizi yalnızca ilk giriş noktasıyla sınırlamak istiyorsunuz.
k=0;
for (i=SiparişlerToplam()-1;i>=0;i--)
{
Yeniler();
if( OrderSelect (i, SELECT_BY_POS, MODE_TRADES) == true) a = 0;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) k++;
}
if( stM1 <= 20 && stM0 > 20 && stH0 > 70 && k==0 && opp != Zaman[0]) // satın al
Sevgili programcılar! Bu sorunu çözmeye yardımcı olun. EA, M15'te bir ticarete girer, ancak aynı zamanda H1'den de koşullar alır. H1'deki koşullar karşılandığında, M15'te birden fazla giriş noktası olabilir. Aslında sorun şu ki, H1'deki koşullar tam tersi değişene kadar kendinizi yalnızca ilk giriş noktasıyla sınırlamak istiyorsunuz.
k=0;
for (i=SiparişlerToplam()-1;i>=0;i--)
{
Yeniler();
if(OrderSelect (i, SELECT_BY_POS, MODE_TRADES) == doğru) a = 0;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) k++;
}
if( stM1 <= 20 && stM0 > 20 && stH0 > 70 && k==0 && opp != Zaman[0]) // satın al
Ve kod olmadan? Özellikle kod net olmadığı için.
Tam olarak ne istiyorsun? Soyut değil, tam olarak elde etmek istediğiniz şey.
Sevgili programcılar! Bu sorunu çözmeye yardımcı olun. EA, M15'te bir ticarete girer, ancak aynı zamanda H1'den de koşullar alır. H1'deki koşullar karşılandığında, M15'te birden fazla giriş noktası olabilir. Aslında sorun şu ki, H1'deki koşullar tam tersi değişene kadar kendinizi yalnızca ilk giriş noktasıyla sınırlamak istiyorsunuz.
k=0;
for (i=SiparişlerToplam()-1;i>=0;i--)
{
Yeniler();
if(OrderSelect (i, SELECT_BY_POS, MODE_TRADES) == doğru) a = 0;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) k++;
}
if( stM1 <= 20 && stM0 > 20 && stH0 > 70 && k==0 && opp != Zaman[0]) // satın al
Örnek algoritma:
bool flagH1 = true ;
bool flagM15 = true ;
if (!flag && flagH1 && flagM15)
{
flag = true ;
}
if (!flagH1 && flag)
flag = false ;
Ve kod olmadan? Özellikle kod net olmadığı için.
Tam olarak ne istiyorsun? Soyut değil, tam olarak elde etmek istediğiniz şey.
extern double Lot= 0.1 ;
extern int stoploss= 20 ;
extern int takeprofit= 50 ;
// если stoploss и / или takeprofit = 0, то отключены.
//if stoploss and/or takeprofit = 0, are disconnected.
extern int Magic = 99999999 ;
// уникальный номер, кот. советник метит свои ордера и впоследствии работает только с ними. При постановке на разные графики или т/ф, межики должны быть разными
extern int Slipp = 1 ;
// величина максимально возможного проскальзывания.
// slippage
extern int sec = 2000 ;
// количество миллисекунд сна советника между повторами отправки торгового поручения в случае неудачи
// number of milliseconds sleep of the EA between repetitions of sending a trade assignment in case of failure
//============================= Stochastic
input int InpKPeriod= 13 ; // K Period
input int InpDPeriod= 3 ; // D Period
input int InpSlowing= 3 ; // Slowing
//============================= Stochastic
input int InpKPeriod1= 13 ; // K Period
input int InpDPeriod1= 3 ; // D Period
input int InpSlowing1= 3 ; // Slowing
int A, a, b, i, ii, o;
double SL, TP, op, stH0, stH1, stM0, stM1;
bool c;
datetime OldTime, Time0, opp;
int init()
{
OldTime = iTime ( NULL , Period (), 0 );
return ( 0 );
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return ( 0 );
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//====================================================================
stH0 = iStochastic ( NULL , 60 ,InpKPeriod,InpDPeriod,InpSlowing, MODE_EMA , 1 , MODE_MAIN , 0 );
stH1 = iStochastic ( NULL , 60 ,InpKPeriod,InpDPeriod,InpSlowing, MODE_EMA , 1 , MODE_MAIN , 1 );
stM0 = iStochastic ( NULL , 15 ,InpKPeriod1,InpDPeriod1,InpSlowing1, MODE_EMA , 1 , MODE_MAIN , 0 );
stM1 = iStochastic ( NULL , 15 ,InpKPeriod1,InpDPeriod1,InpSlowing1, MODE_EMA , 1 , MODE_MAIN , 1 );
//====================================================================
b= 0 ;
for (i= OrdersTotal ()- 1 ;i>= 0 ;i--)
{
RefreshRates ();
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ) == true ) a = 0 ;
if ( OrderSymbol () == Symbol () && OrderMagicNumber () == Magic) b++;
}
if ( stM1 <= 20 && stM0 > 20 && stH0 > 70 && b== 0 && opp != Time [ 0 ]) // покупка
{
opp = Time [ 0 ];
RefreshRates ();
op = Ask ;
A = OrderSend ( Symbol (), OP_BUY , Lot, Ask , Slipp, 0 , 0 , NULL , Magic, 0 , Blue);
o = GetLastError ();
while (A < 0 && o != 4109 && o != 132 && o != 133 )
{
Print ( "Error =" , o);
Sleep (sec);
RefreshRates ();
op = Ask ;
A = OrderSend ( Symbol (), OP_BUY , Lot, Ask , Slipp, 0 , 0 , NULL , Magic, 0 , Blue);
o = GetLastError ();
}
SL = op-stoploss* Point ;
if (stoploss == 0 ) SL = 0 ;
TP = op+takeprofit* Point ;
if (takeprofit == 0 ) TP = 0 ;
if (SL != 0 || TP != 0 )
{
RefreshRates ();
if ( OrderSelect (A, SELECT_BY_TICKET ) == true ) a = 0 ;
c = OrderModify ( OrderTicket (), OrderOpenPrice (), SL, TP, 0 , Green);
o = GetLastError ();
while (c == false && o != 4109 && o != 132 && o != 133 )
{
Print ( "Error =" , o);
Sleep (sec);
RefreshRates ();
if ( OrderSelect (A, SELECT_BY_TICKET ) == true ) a = 0 ;
c = OrderModify ( OrderTicket (), OrderOpenPrice (), SL, TP, 0 , Green);
o = GetLastError ();
} }
}
//---------------------------------------------------------------------------------------------------------+
b= 0 ;
for (i= OrdersTotal ()- 1 ;i>= 0 ;i--)
{
RefreshRates ();
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ) == true ) a = 0 ;
if ( OrderSymbol () == Symbol () && OrderMagicNumber () == Magic) b++;
}
if ( stM1 >= 80 && stM0 < 80 && stH0 < 30 && b== 0 && opp != Time [ 0 ]) // продажа
{
opp = Time [ 0 ];
RefreshRates ();
op = Bid ;
A = OrderSend ( Symbol (), OP_SELL , Lot, Bid , Slipp, 0 , 0 , NULL , Magic, 0 , Red);
o = GetLastError ();
while (A < 0 && o != 4109 && o != 132 && o != 133 )
{
Print ( "Error =" , o);
Sleep (sec);
RefreshRates ();
op = Bid ;
A = OrderSend ( Symbol (), OP_SELL , Lot, Bid , Slipp, 0 , 0 , NULL , Magic, 0 , Red);
o = GetLastError ();
}
SL = op+stoploss* Point ;
if (stoploss == 0 ) SL = 0 ;
TP = op-takeprofit* Point ;
if (takeprofit == 0 ) TP = 0 ;
if (SL != 0 || TP != 0 )
{
RefreshRates ();
if ( OrderSelect (A, SELECT_BY_TICKET ) == true ) a = 0 ;
c = OrderModify ( OrderTicket (), OrderOpenPrice (), SL, TP, 0 , Green);
o = GetLastError ();
while (c == false && o != 4109 && o != 132 && o != 133 )
{
Print ( "Error =" , o);
Sleep (sec);
RefreshRates ();
if ( OrderSelect (A, SELECT_BY_TICKET ) == true ) a = 0 ;
c = OrderModify ( OrderTicket (), OrderOpenPrice (), SL, TP, 0 , Green);
o = GetLastError ();
} }
}
return ( 0 );
}
//+------------------------------------------------------------------+
Merhaba Artyom! Görev, H1'de bir sinyal varken M15'teki girişi bir (ilk sinyal) ile sınırlamaktır.
Merhaba sevgili forum kullanıcıları. Uzman Danışmandan Metatrader4'te yerleşik "sondaki durdurma" aracının değerini bir şekilde ayarlamak mümkün mü? Yerleşik araçtan bağımsız bir takip durdurma uygulamak için Expert Advisor'a bir kodun eklenmesi değil, ilgi çekici olan budur.
Cevaplarınız için şimdiden teşekkürler.
Merhaba sevgili forum kullanıcıları. Uzman Danışmandan Metatrader4'te yerleşik "sondaki durdurma" aracının değerini bir şekilde ayarlamak mümkün mü? Yerleşik araçtan bağımsız bir takip durdurma uygulamak için Expert Advisor'a bir kodun eklenmesi değil, ilgi çekici olan budur.
Cevaplarınız için şimdiden teşekkürler.