![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
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
double BU1=iMA(Symbol(),0,ShortSma,0,MODE_SMA,PRICE_CLOSE,i+1);
double BL1=iMA(Symbol(),0,LongSma,0,MODE_SMA,PRICE_CLOSE,i);
string SBUY="yanlış";string SSEL="yanlış";
if(BU1<Kapat[1]&&BL1<Kapat[1])SBUY="true";if(BL1>Kapat[1]&&BU1>Kapat[1])SSEL="true";
Şimdi çalışıyor, TP'den sonra Ticarette bir sorun vardı .....
Yardımın için teşekkürler Mladen.
merhaba bay mladen
bu kelimeyi nasıl çevirebiliriz:
http://forexsystemsru.com/1075962-post327.html
Küme analizi
saygınlık
bay mladen:
MTF yapabilir misin
saygılarımla
Merhaba sevgili kodlayıcılar,
Muhtemelen basit bir sorum var, ama şu anda takıldım:
EA'm sorunsuz bir şekilde alım satım emirleri açıyor, ancak geldiğinde
SIGNAL_CLOSEBUY veya SIGNAL_CLOSESELL için siparişleri kapatmaz.
Burada alım veya satım emirlerini kapatmak için tetikleyici olarak bir RSI_Filter kullanıyorum.
Kodumu kopyaladım, biri bakabilirse çok mutlu olurum.
Şimdiden teşekkür ederim!
#define SIGNAL_NONE 0
// Signal Begin(Exit Buy)#define SIGNAL_BUY 1
#define SIGNAL_SELL 2
#define SIGNAL_CLOSEBUY 3
#define SIGNAL_CLOSESELL 4
extern int MaxShortTrades = 1 ;
extern int MaxLongTrades = 1 ;
int Order = SIGNAL_NONE;
// RSI Filter
double RSIfilter= iRSI ( Symbol (), 0 ,RSIPeriod, PRICE_CLOSE ,BarShift);
// Trade Signal Indicator
double NLD1,NLD2;
NLD1 = iCustom ( NULL , 0 , "indicator" , 0 ,Length, 0 , 0 , 1 , 0 , 0 , 0 , 1 );
NLD2 = iCustom ( NULL , 0 , "indicator" , 0 ,Length, 0 , 0 , 1 , 0 , 0 , 0 , 2 );
// Amount of long / short trades
int longs = 0 ;
int shorts = 0 ;
double j;
for (j= OrdersTotal ()- 1 ;j>= 0 ; j--)
{
if ( OrderType ()== OP_BUY ) longs++; // Check # of long trades.
if ( OrderType ()== OP_SELL ) shorts++; // Check # of short trades
}
// place orders
if (longs < MaxLongTrades && NLD1 > NLD2 && RSIfilter> 55 ) Order = SIGNAL_BUY;
if (shorts < MaxShortTrades && NLD1 < NLD2 && RSIfilter< 45 ) Order = SIGNAL_SELL;
if (RSIfilter< 50 ) Order=SIGNAL_CLOSEBUY;
if (Order==SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && ( Bars !=BarCount))))
{
dummyResult= OrderClose ( OrderTicket (), OrderLots (), Bid ,Slippage*PipMultiplier,MediumSeaGreen);
if (EachTickMode) TickCheck = True ;
if (!EachTickMode) BarCount = Bars ;
return ( 0 );
}
// Signal Begin(Exit Sell)
if (RSIfilter> 50 ) Order=SIGNAL_CLOSESELL;
if (Order==SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && ( Bars !=BarCount))))
{
dummyResult= OrderClose ( OrderTicket (), OrderLots (), Ask ,Slippage*PipMultiplier,DarkOrange);
if (EachTickMode) TickCheck = True ;
if (!EachTickMode) BarCount = Bars ;
return ( 0 );
}
Merhaba sevgili kodlayıcılar,
Muhtemelen basit bir sorum var, ama şu anda takıldım:
EA'm sorunsuz bir şekilde alım satım emirleri açıyor, ancak geldiğinde
SIGNAL_CLOSEBUY veya SIGNAL_CLOSESELL için siparişleri kapatmaz.
Burada alım veya satım emirlerini kapatmak için tetikleyici olarak bir RSI_Filter kullanıyorum.
Kodumu kopyaladım, biri bakabilirse çok mutlu olurum.
Şimdiden teşekkür ederim!
#define SIGNAL_NONE 0
// Signal Begin(Exit Buy)#define SIGNAL_BUY 1
#define SIGNAL_SELL 2
#define SIGNAL_CLOSEBUY 3
#define SIGNAL_CLOSESELL 4
extern int MaxShortTrades = 1 ;
extern int MaxLongTrades = 1 ;
int Order = SIGNAL_NONE;
// RSI Filter
double RSIfilter= iRSI ( Symbol (), 0 ,RSIPeriod, PRICE_CLOSE ,BarShift);
// Trade Signal Indicator
double NLD1,NLD2;
NLD1 = iCustom ( NULL , 0 , "indicator" , 0 ,Length, 0 , 0 , 1 , 0 , 0 , 0 , 1 );
NLD2 = iCustom ( NULL , 0 , "indicator" , 0 ,Length, 0 , 0 , 1 , 0 , 0 , 0 , 2 );
// Amount of long / short trades
int longs = 0 ;
int shorts = 0 ;
double j;
for (j= OrdersTotal ()- 1 ;j>= 0 ; j--)
{
if ( OrderType ()== OP_BUY ) longs++; // Check # of long trades.
if ( OrderType ()== OP_SELL ) shorts++; // Check # of short trades
}
// place orders
if (longs < MaxLongTrades && NLD1 > NLD2 && RSIfilter> 55 ) Order = SIGNAL_BUY;
if (shorts < MaxShortTrades && NLD1 < NLD2 && RSIfilter< 45 ) Order = SIGNAL_SELL;
if (RSIfilter< 50 ) Order=SIGNAL_CLOSEBUY;
if (Order==SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && ( Bars !=BarCount))))
{
dummyResult= OrderClose ( OrderTicket (), OrderLots (), Bid ,Slippage*PipMultiplier,MediumSeaGreen);
if (EachTickMode) TickCheck = True ;
if (!EachTickMode) BarCount = Bars ;
return ( 0 );
}
// Signal Begin(Exit Sell)
if (RSIfilter> 50 ) Order=SIGNAL_CLOSESELL;
if (Order==SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && ( Bars !=BarCount))))
{
dummyResult= OrderClose ( OrderTicket (), OrderLots (), Ask ,Slippage*PipMultiplier,DarkOrange);
if (EachTickMode) TickCheck = True ;
if (!EachTickMode) BarCount = Bars ;
return ( 0 );
}
Devam etmeden önce çözmeniz gereken iki sorun:
Devam etmeden önce çözmeniz gereken iki sorun:
Sevgili Mladen,
faydalı önerileriniz için çok teşekkür ederim.
Seni doğru anladıysam aşağıdaki kod gibi bir şey uygulamam gerekiyor
Bir "buy_ticket" seçmek için EA'nın kapanması gerekir. Kod henüz test edilmedi ve bir tür "sözde durum".
int buy_ticket= 0 ;
int sell_ticket= 0 ;
int ticket;
// Iterate through tickets
for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--)
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ) && OrderMagicNumber ()==MagicNumber && OrderSymbol ()== Symbol ())
{
if ( OrderType ()== OP_BUY )
buy_ticket= OrderTicket ();
else
if ( OrderType () == OP_SELL )
sell_ticket= OrderTicket ();
}
}
// Close Ticket with trigger
if (RSIfilter< 50 ) Order=SIGNAL_CLOSEBUY;
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;
if (Order==CLOSE_BUY && buy_ticket!= 0 )
{
if ( OrderSelect (buy_ticket, SELECT_BY_TICKET ))
{
if (! OrderClose ( OrderTicket (), OrderLots (), OrderClosePrice (),Slippage, clrDodgerBlue ))
Print ( "Error closing Buy #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());
}
}
else
if (Order==CLOSE_SELL && sell_ticket!= 0 )
{
if ( OrderSelect (sell_ticket, SELECT_BY_TICKET ))
{
if (! OrderClose ( OrderTicket (), OrderLots (), OrderClosePrice (),Slippage, clrDodgerBlue ))
Print ( "Error closing Sell #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());
}
}
Sevgili Mladen,
faydalı önerileriniz için çok teşekkür ederim.
Seni doğru anladıysam aşağıdaki kod gibi bir şey uygulamam gerekiyor
Bir "buy_ticket" seçmek için EA'nın kapanması gerekir. Kod henüz test edilmedi ve bir tür "sözde durum".
int buy_ticket= 0 ;
int sell_ticket= 0 ;
int ticket;
// Iterate through tickets
for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--)
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ) && OrderMagicNumber ()==MagicNumber && OrderSymbol ()== Symbol ())
{
if ( OrderType ()== OP_BUY )
buy_ticket= OrderTicket ();
else
if ( OrderType () == OP_SELL )
sell_ticket= OrderTicket ();
}
}
// Close Ticket with trigger
if (RSIfilter< 50 ) Order=SIGNAL_CLOSEBUY;
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;
if (Order==CLOSE_BUY && buy_ticket!= 0 )
{
if ( OrderSelect (buy_ticket, SELECT_BY_TICKET ))
{
if (! OrderClose ( OrderTicket (), OrderLots (), OrderClosePrice (),Slippage, clrDodgerBlue ))
Print ( "Error closing Buy #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());
}
}
else
if (Order==CLOSE_SELL && sell_ticket!= 0 )
{
if ( OrderSelect (sell_ticket, SELECT_BY_TICKET ))
{
if (! OrderClose ( OrderTicket (), OrderLots (), OrderClosePrice (),Slippage, clrDodgerBlue ))
Print ( "Error closing Sell #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());
}
}
Aynı anda açılan sadece 1 siparişiniz (aynı büyü, sembol demek istiyorum) var mı?
Evet ise, o zaman işe yarayacaktır.
Sevgili arkadaşlar,
Ekli adet, sabit lota sürekli açık siparişlerdir ( tüm siparişlere açıktır 0.10 )
Açık sipariş lot değerini değiştirmiyorum veya kontrol etmiyorum!!
"Lot" ve "MaximumRisk" değerleri ayarlarında mevcuttur, ancak siparişlerin lot değerleri üzerinde etkili değildir!
Lütfen bana yardım eder misin?
merhaba bay mladen
bu resme benzer boş bir alt pencere yapabilir misin
saygınlık
Merhaba Mladen, indirdim
stepma_pdf_4_4.ex4 ve histgram,
onları MT4'e kopyaladı. Bunları grafik penceresine sürüklemek
Aşağıdaki mesajı alıyorum, lütfen resme bakın:
Göstergenizi nasıl kullanabileceğimi söyler misiniz?
Lea
not. aynı şey şu durumlarda oldu: ortalamalar_-_mtf__alerts_7_4.ex4 ve histogram