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
tekrar yardım et
Herkese selam,
Sonsuzluk gibi görünen bir süredir bir EA üzerinde çalışıyorum. Bu konudaki tüm insanlara bana verdikleri tüm yardımlar için teşekkür ederim.
Şimdi yine şaşkınım ve daha fazla yardım arıyorum. Hepimizin bildiği gibi, MA'lardan Stoch'lara geçiş sinyallerinin çoğu çok iyi çalışmaz çünkü çoğu zaman hareketin sonunda kesişir.
Yapmaya çalıştığım şey, 50 çizgisini geçtiğinde Stokastik RSI kullanmak, ancak fiyat belirli bir miktarda pip (MinPip) ile yüksek veya düşük seviyeyi geçtikten sonra sadece aşağıdaki çubukta. Benim asıl sorunum, haçı takip ettiğimde, fiyatın çaprazdan sonraki çubuklarda yalnızca MinPip'lere ulaşması, ancak çaprazın aynı yönde kalmasıdır.
Ne yapmaya çalıştığımı göstermek için bir resim eklemeye çalışıyorum.
1. nokta bir satış kesişme noktasındadır, ancak fiyat hiçbir zaman bu çubuğun en düşük seviyesini geçmediği için hiçbir ticaret yapılmaz (aslında, önceki herhangi bir ticaretin aktif kalmasını isterim).
2. nokta bir satın alma kesişimindedir ancak fiyat, kesişmeden sonraki 4. çubuktaki çubuğun yalnızca en yüksek noktasını geçer ve o anda alınmalıdır. Önceki satış emirleri şu anda kapatılmalıdır.
Umarım bu işe yarar çünkü ilk kez resim ekliyorum. Kırdıysam şimdiden özür dilerim.
Putz
Daha fazla bilgi
Aşağıdaki, CurrDir'in geçerli yön olduğu ve PrevDir'in önceki yön olduğu programlamamdır, bu nedenle eşit değilse, o zaman bir çarpı vardır.
Sorun şu ki, mevcut çubukta geçmezse, CurrDir ve PrevDir eşit olur ve ValHigh veya ValLow'a ulaşıp ulaşmadığını görmek için o çubuğu asla geçmez.
Herhangi bir yardım takdir edilecektir.
Putz
if(CurrDir != PrevDir)
{
if(CurrDir == 1)
{
ValHigh = iHigh(Symbol(),Timeframe2,1) + MinPips*Point;
if(Bid >= ValHigh)
{
return(1); //up
}
return (2);
}
if(CurrDir == 2)
{
ValLow = iLow(Symbol(),Timeframe2,1) - MinPips*Point;
if(Ask <= ValLow)
{
return(2);//down
}
return (1);
}
Anlaşıldı...sanırım
Sanırım sonunda sorunumu anladım. Şu an saat neredeyse 2.30 ve çok yorgunum bu yüzden yarın kontrol edeceğim...
Putz
MT4 dışa aktarma dosyasının veri biçimini değiştirmenin bir yolu var mı?
ASCII.csv dosyasını arıyorum ancak verilerin aşağıdaki biçimde olması gerekiyor;
1) ayrı sütunlar (yalnızca gereken: zaman, yüksek, düşük ve yakın)
2) sadece son 1000 bar için
3) sırayı tersine çevirir (en üstte)
4) zaten masaüstümde bulunan bir klasöre kaydeder (belki hangisini seçmek için bir göz atma işlevi ?)
Bana yardımcı olabilecek herkese şimdiden teşekkür ederim.
Göstergeleri Ekleme ve Silme
Ticaret platformuna bir gösterge eklemek veya silmek için EA'da bir kod yazılabilir mi ???
Dave
Siparişlerin yönetimi konusunda büyük bir sorunum var....
X:59'daki basit EA girişim...... ama aynı çarpı üzerinde birden fazla girişim var. Sorum şu: Siparişlerin zaman girişini kontrol etmek ve yeni siparişle karşılaştırmak mümkün mü?
x:59'da sadece 1 çapraz sipariş ile giriş istiyorum....
Biri bana yardım edebilir mi?
Siparişlerin yönetimi konusunda büyük bir sorunum var....
X:59'daki basit EA girişim...... ama aynı çarpı üzerinde birden fazla girişim var. Sorum şu: Siparişlerin zaman girişini kontrol etmek ve yeni siparişle karşılaştırmak mümkün mü?
x:59'da sadece 1 çapraz sipariş ile giriş istiyorum....
Birisi bana yardım edebilir mi?Bu benim çözümüm, umarım bu birine yardımcı olabilir ......
//+------------------------------------------- -------------------+
//| Sinyal Başlıyor(Giriş) |
//+------------------------------------------- -------------------+
if (Buy1_1 58 && check_buy==0 ) Sipariş = SIGNAL_BUY;
if (Sell1_1 > Sell1_2 && Minute()>58 && check_sell==0 ) Sipariş = SIGNAL_SELL;
if (Dakika()==00) {check_buy=0;}
if (Dakika()==00) {check_sell=0;}
//+------------------------------------------- -------------------+
//| Sinyal Sonu |
//+------------------------------------------- -------------------+
//Satın almak
if (Sipariş == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Barlar != BarCount)))) {
//if(!IsTrade) {
// Serbest marjı kontrol et
if (AccountFreeMargin() < (1000 * Lot)) {
Print("Paramız yok. Serbest Marj = ", AccountFreeMargin());
dönüş(0);
}
if (StopLossMode) StopLossLevel = Sor - StopLoss * Puan; başka StopLossLevel = 0.0;
if (TakeProfitMode) TakeProfitLevel = Sor + TakeProfit * Puan; başka TakeProfitLevel = 0.0;
check_buy=1;
Ticket = OrderSend(Symbol(), OP_BUY, Lot, Ask, Slippage, StopLossLevel, TakeProfitLevel, "Buy %W(#" + Magic_Number + ")", Magic_Number, 0, DodgerBlue);
if(Bilet > 0) {
if (OrderSelect(Bilet, SELECT_BY_TICKET, MODE_TRADES)) {
Print("Satın alma emri açıldı : ", OrderOpenPrice());
if (SignalMail) SendMail("[Sinyal Uyarısı]", "[" + Symbol() + "] " + DoubleToStr(Ask, Digits) + " Satın Alımı Aç");
} başka {
Print("SATIN AL emri açılırken hata oluştu : ", GetLastError());
}
}
if (EachTickMode) TickCheck = Doğru;
if (!EachTickMode) BarCount = Çubuklar;
dönüş(0);
// }
}
//Satmak
if (Sipariş == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Barlar != BarCount)))) {
//if(!IsTrade) {
// Serbest marjı kontrol et
if (AccountFreeMargin() < (1000 * Lot)) {
Print("Paramız yok. Serbest Marj = ", AccountFreeMargin());
dönüş(0);
}
if (StopLossMode) StopLossLevel = Teklif + StopLoss * Puan; başka StopLossLevel = 0.0;
if (TakeProfitMode) TakeProfitLevel = Teklif - TakeProfit * Puan; başka TakeProfitLevel = 0.0;
check_sell=1;
Bilet = OrderSend(Symbol(), OP_SELL, Lot, Bid, Slippage, StopLossLevel, TakeProfitLevel, "Sat %W(#" + Magic_Number + ")", Magic_Number, 0, DeepPink);
if(Bilet > 0) {
if (OrderSelect(Bilet, SELECT_BY_TICKET, MODE_TRADES)) {
Print(" SAT emri açıldı : ", OrderOpenPrice());
if (SignalMail) SendMail("[Sinyal Uyarısı]", "[" + Symbol() + "] " + DoubleToStr(Teklif, Rakamlar) + " Açık Satış");
} başka {
Print("SATIŞ emrini açarken hata: ", GetLastError());
}
}
if (EachTickMode) TickCheck = Doğru;
if (!EachTickMode) BarCount = Çubuklar;
dönüş(0);
//}
}
if (!EachTickMode) BarCount = Çubuklar;
dönüş(0);
}
//+------------------------------------------- -------------------+
Metastock'a
check_buy'un True olmasına neyin neden olduğunu söyleyemem.
Açık bir siparişle sınırlamak için girişten önce şunları kullanabilirsiniz:
if (Sipariş Toplamı()==0)
büyük olmak
Kodlama Bilgi Soruları
NE ZAMAN bir STATİK değişken kullanmak istersiniz - hangi sorunları çözebilir?
NE ZAMAN INIT() bölümüne bir şey koymak istersiniz - bu hangi sorunları çözer?
büyük olmak
Bunun daha önce istenip istenmediğinden emin değilim, ancak şu anda +1 saat öncesi ve sonrasında belirli bir fiyata bir EA'da bir çizgi çizmenin bir yolu var mı?