Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım 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
Düzelttiğimi sanıyordum ama hayır.
Yapmaya çalıştığım şey, mevcut pozisyonu açmak için hangi giriş koşulunun kullanıldığını belirten grafikte ve dergide bir yorum yapmak.
Bu daha önce yapıldı mı ve nasıl yapıyorsunuz çünkü bir süredir deniyorum ama şans yok ve düşündüğüm kadar kolay değil.
Son denemem aşağıda.
herhangi bir yardım harika olurdu
buysig = Uzun || Uzun2 || Uzun3 || Uzun4;
sellsig = Kısa || Kısa2 || Kısa3 || Kısa4;
yakın satın alma=satış;
closesell=satın alma;
if (curprof>=AccountEquity()*ProfitExit/100.0) {
çıkış=doğru;
}
if (last>0 && (Time[0]-last)/(Period()*60)>=CancelOrderBars) {
yeniden düzen=doğru;
}
}
geçersiz CheckForOpen() {
int res,tr;
//---- satış koşulları
co=CalculateCurrentOrders(Symbol());
if(sellsig && lastsig!=-1) {
if ( Kısa == true)Print(" Kısa sinyal alındı ");
if ( Short2 == true)Print(" Short2 sinyali alındı ");
if ( Short3 == true)Print(" Short3 sinyali alındı ");
if ( Short4 == true)Print(" Short4 sinyali alındı ");
co=CalculateCurrentOrders(Symbol());
if (co==0) {
res = OpenStop(OP_SELLSTOP,LotsRisk(StopLoss), Low[shift]-OrderPipsDiff*Point, StopLoss, TakeProfit1);
}
sonsig=-1;
son=Zaman[0];
dönüş;
}
//---- satın alma koşulları
co=CalculateCurrentOrders(Symbol());
if(buysig && lastsig!=1) {
if ( Uzun == true) Print(" Uzun sinyal alındı ");
if ( Long2 == true)Print(" Long2 sinyali alındı ");
if ( Long3 == true) Print(" Long3 sinyali alındı ");
if ( Long4 == true)Print(" Long4 sinyali alındı ");
co=CalculateCurrentOrders(Symbol());
if (co==0) {
res = OpenStop(OP_BUYSTOP,LotsRisk(StopLoss), High[shift]+OrderPipsDiff*Point, StopLoss, TakeProfit1);
}
son=Zaman[0];
sonsig=1;
dönüş;
}
}
bool CloseAtMarket(int bilet, çift lot) {
//hata toleranslı piyasa emri kapanışı
bool bres=yanlış; int tr;
dener=0;
while (!bres && try<SiparişNumarası) {
Yenileme Oranları();
bres=OrderClose(bilet,lot,OrderClosePrice(),slippage,Beyaz);
çalışır++;
tr=0; while (tr<5 && !IsTradeAllowed()) { tr++; Uyku(2000); }
}
if (!bres) Print("Sırayı kapatırken hata oluştu : ",ErrorDescription(GetLastError()));
}
int OpenStop(int modu, çift lot, çift prc, int SL, int TP) {
int res,tr,col;
dize postası;
çift açık fiyat,sl,tp,stlev;
dener=0;
stlev=(1+MarketInfo(Symbol(),MODE_STOPLEVEL))*Nokta;
while (res<=0 && try<SiparişNumarası) {
tr=0; while (tr<5 && !IsTradeAllowed()) { tr++; Uyku(2000); }
Yenileme Oranları();
if (mod==OP_SELLSTOP) {
if (prc<=Teklif-stlev) openprice=prc;
başka openprice=Teklif-stlev;
if (SL>0) sl=açık fiyat+SL*Puan;
if (TP>0) tp=açık fiyat-TP*Puan;sütun=Kırmızı;
} başka
if (mod==OP_BUYSTOP) {
if (prc>=Ask+stlev) openprice=prc;
başka openprice=Sor+stlev;
if (SL>0) sl=openprice-SL*Puan;
if (TP>0) tp=açık fiyat+TP*Puan;sütun=Mavi;
} başka bir dönüş;
Print(Ask," ",Teklif," ",Symbol()," ",mode," ",lot," ",openprice," ",sl," ",tp," ");
res=OrderSend(Symbol(),mode,lot,openprice,slippage,sl,tp,EAName+"_"+ MagicNumber, MagicNumber,0,col);
çalışır++;
}
if (res<=0) Print(" Bekleyen sipariş açılırken hata oluştu : ",ErrorDescription(GetLastError()));
dönüş(ler);
Bu EA derlenmeyecek bile, stoploss endişelerinizden en azı olmalıdır. İçinde rastgele boşluklar olan veya ilk harfi büyük olmayan 5 Değişken var!
Bu EA derlenmeyecek bile, stoploss endişelerinizden en azı olmalıdır. İçinde rastgele boşluklar olan veya ilk harfi büyük olmayan 5 Değişken var!
İşte düzeltme sürümü.
Ama bu hala herhangi bir pozisyon açamıyor çünkü kodda uzun / kısa pozisyonların nasıl açılacağına karar verme mantığı yok.
Bu EA ile ilgili yardım
Kim bu CHingsMARoonCLK?
Hatırladığım kadarıyla, bu EA elCactus'tan 10p3'ten başka bir şey değil, ama belki yanılıyorum...
Konusunu kontrol edin, muhtemelen aradığınızı bulacaksınız: https://www.mql5.com/en/forum/174975Tamam.. şimdi mesele şu ki bu EA için bir stoploss koyabiliyorum.. kod nedir? yardım edebilir misin? teşekkürler
ticaret bölgesi yok - kod yardımı
Herkese merhaba,
Bir kod üzerinde ince ayar yapmaya çalışıyorum ama çok uğraştıktan sonra hala düzeltemedim...
Buradaki fikir, fiyat aralığı önceki ticaretle aynı bölgedeyse bir sonraki ticareti durdurmaktır. Uzun ticaret, son AÇIK KONUM uzun ticareti için bölgeyi kontrol edecek ve kısa ticaret, son AÇIK KONUM kısa ticareti için bölgeyi kontrol edecektir.
yani. ilk UZUN 1.4000'de ise, ikinci UZUN yalnızca fiyat bölgenin (20 pip bölgesi) dışına çıkması durumunda 1.3990'dan az ve&& 1.4010'dan fazlaysa tetiklenir
Herkese teşekkürler..
//+------------------------------------------- -------------------------------------------------- --------------------------+
//| Yan pazar için filtre - benzer fiyat aralığında çoklu ticareti önler ve ticarete kapalı bölge yaratır |
//+------------------------------------------- -------------------------------------------------- --------------------------+
harici int Bölge1 = -10; // (alt bölge)
harici int Bölge2 = 10; // (üst bölge)
// önceki ticaretten -10 ile +10 arasında ticaret bölgesi yok
bool CheckZone(int tipi)
{
int cnt = SiparişlerToplam();
için (int i=0; i < cnt; i++)
{
(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) devam ederse;
(OrderSymbol() != Symbol()) devam ederse;
(OrderMagicNumber() != Magic) devam ederse;
(OrderType() != type) devam ederse;
if (tür == OP_BUY)
{
if( (Bid - OrderOpenPrice()) > Zone1*Point && (Bid - OrderOpenPrice()) < Zone2*Point ) return(false);
}
if (tür == OP_SELL)
{
if( (OrderOpenPrice()-Ask) > Zone1*Point && (OrderOpenPrice()-Ask) < Zone2*Point ) return(false);
}
}
dönüş (doğru);
}
EA Sorununu Çözün
Merhaba tüm MQL Programcıları,
Lütfen aşağıdaki kodu kontrol edin ve bunun neden takasları demo hesabıma yerleştirmediğini söyleyin. GJ 1m'de iyi EA ama ne yazık ki çalışmıyor. Herhangi biri düzeltebilir ve hatasız bir EA olarak kullanılabilir hale getirebilir mi?
Ben şimdiden çok şükür!
Saygılarımla.
//+------------------------------------------- -------------------+
dış int Uzunluk1 = 3;
dış int Uzunluk2 = 10;
dış int Uzunluk3 = 16;
çift Histo[];
çift MaHisto[];
ikiye katlamak[];
çift dn[];
çift upMode[];
çift dnMode[];
int alarmBar;
int init()
{
dönüş(0);
}
int tanım()
{
dönüş(0);
}
int başlangıç()
{
int limiti;
int counted_bars=IndicatorCounted();
if(counted_bars<0) counted_bars=0;
if(counted_bars>0) counted_bars--;
limit=Barlar-sayılan_barlar;
for(int i = 0 ;i <= limit ;i++)Histo = iMA(Symbol(),0,Length1,0,MODE_EMA,PRICE_CLOSE,i) - iMA(Symbol(),0,Length2,0,MODE_EMA,PRICE_CLOSE ,ben);
for(int j = 0 ;j <= limit ;j++)MaHisto[j] = iMAOnArray(Histo,0,Length3,0,MODE_EMA,j);
for(int m = 0 ;m <= limit ;m++)
{
if(MaHisto[m+1] 0)
{
yukarı[m] = Aç[m]-(5*Nokta);
if(Barlar > alertBar && m == 0)
{
//Alert(Symbol()+" "+Period()+" KI LONG ",Sor);
OrderSend(Symbol(),OP_BUY,0.1,Ask,3,25,15,0,0,0,Kırmızı);
alertBar = Çubuklar;
}
}
else if(MaHisto[m+1] >= 0 && MaHisto[m]< 0)
{
dn[m] = Aç[m]+(5*Nokta);
if(Barlar > alertBar && m == 0)
{
OrderSend(Symbol(),OP_SELL,0.1,Ask,3,25,15,0,0,0,Kırmızı);
alertBar = Çubuklar;
}
}
başka
{
yukarı[m] = BOŞ_DEĞER;
dn[m] = BOŞ_DEĞER;
}
if( MaHisto[m] > 0 )
{
upMode[m] = Yüksek[m];
dnMode[m] = Düşük[m];
}
else if( MaHisto[m] < 0 )
{
dnMode[m] = Yüksek[m];
upMode[m] = Düşük[m];
}
}
dönüş(0);
}
//+------------------------------------------- -------------------+
Merhaba tüm MQL Programcıları,
Lütfen aşağıdaki kodu kontrol edin ve bunun neden takasları demo hesabıma yerleştirmediğini söyleyin. GJ 1m'de iyi EA ama ne yazık ki çalışmıyor. Herhangi biri düzeltebilir ve hatasız bir EA olarak kullanılabilir hale getirebilir mi?
Ben şimdiden çok şükür!
Saygılarımla.
//+------------------------------------------- -------------------+
dış int Uzunluk1 = 3;
dış int Uzunluk2 = 10;
dış int Uzunluk3 = 16;
çift Histo[];
çift MaHisto[];
ikiye katlamak[];
çift dn[];
çift upMode[];
çift dnMode[];
int alarmBar;
int init()
{
dönüş(0);
}
int tanım()
{
dönüş(0);
}
int başlangıç()
{
int limiti;
int counted_bars=IndicatorCounted();
if(counted_bars<0) counted_bars=0;
if(counted_bars>0) counted_bars--;
limit=Barlar-sayılan_barlar;
for(int i = 0 ;i <= limit ;i++)Histo = iMA(Symbol(),0,Length1,0,MODE_EMA,PRICE_CLOSE,i) - iMA(Symbol(),0,Length2,0,MODE_EMA,PRICE_CLOSE ,ben);
for(int j = 0 ;j <= limit ;j++)MaHisto[j] = iMAOnArray(Histo,0,Length3,0,MODE_EMA,j);
for(int m = 0 ;m <= limit ;m++)
{
if(MaHisto[m+1] 0)
{
yukarı[m] = Aç[m]-(5*Nokta);
if(Barlar > alertBar && m == 0)
{
//Alert(Symbol()+" "+Period()+" KI LONG ",Sor);
OrderSend(Symbol(),OP_BUY,0.1,Ask,3,25,15,0,0,0,Kırmızı);
alertBar = Çubuklar;
}
}
else if(MaHisto[m+1] >= 0 && MaHisto[m]< 0)
{
dn[m] = Aç[m]+(5*Nokta);
if(Barlar > alertBar && m == 0)
{
OrderSend(Symbol(),OP_SELL,0.1,Ask,3,25,15,0,0,0,Kırmızı);
alertBar = Çubuklar;
}
}
başka
{
yukarı[m] = BOŞ_DEĞER;
dn[m] = BOŞ_DEĞER;
}
if( MaHisto[m] > 0 )
{
upMode[m] = Yüksek[m];
dnMode[m] = Düşük[m];
}
else if( MaHisto[m] < 0 )
{
dnMode[m] = Yüksek[m];
upMode[m] = Düşük[m];
}
}
dönüş(0);
}
//+------------------------------------------- -------------------+"OrderSend(Symbol(),OP_SELL,0.1,Sor,3,25,15,0,0,0,R ed); "
Alış fiyatından satıyorsunuz, Bid olmalıdır.
Yorum alanı 0 değil "" olmalıdır.
SL olarak 25, Teklif+25*Puan olmalıdır.
15 TP olarak Bid-15*Puan olmalıdır.
"Kırmızı" bir renk değildir.
"OrderSend(Symbol(),OP_SELL,0.1,Sor,3,25,15,0,0,0,R ed); "
Alış fiyatından satıyorsunuz, Bid olmalıdır.
Yorum alanı 0 değil "" olmalıdır.
SL olarak 25, Teklif+25*Puan olmalıdır.
15 TP olarak Bid-15*Puan olmalıdır.
"Kırmızı" bir renk değildir.Desteğiniz için çok teşekkür ederiz!
Ama hala sorunlarla karşılaşıyorum sıfır MQL bilgisi. Lütfen kodu kopyalayıp mq4 dosyasına yapıştırıp demoda test edip düzgün çalışıp çalışmadığını söyler misiniz? Desteğiniz Kindest Help Michel olarak sayılacaktır.
Saygılarımla,
Kaşif.
Hayır, üzgünüm, şimdilik yeterli zamanım yok.
Birkaç saat içinde Noel için aileme geri dönmek için bir tekneye biniyorum ... ve artık bilgisayar yok ...