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
Herhangi biri, EA'nın birkaç durumda eşzamanlı emirleri yürütmesine izin vermek için kodu nasıl değiştireceğimi daha iyi anlamama yardımcı olabilir (başka bir deyişle, aynı EA'yı aynı anda birkaç çift üzerinde test ediyorum ve her örnek için farklı sihirli sayılar kullanıyorum.)
Orijinal kod şunları içerir:
int toplam=SiparişToplam();
if(toplam<1)
Ve bence problem burada. Sayıyı arttırırsam, aynı çift için aynı çubukta (M15) sadece birkaç emir yürütür. Eğer if(toplam<1) bırakılırsa, farklı çiftlerde aynı anda emir verilmesine izin verilmez.
Çift başına bir seferde yalnızca bir siparişe izin vermek için kene veya çubukla ilgili bir şeyi değiştirebilir miyim, ancak EA (farklı sihirli numaraya sahip) eklenmiş tüm çiftler için birkaç siparişe izin verebilir miyim?
Yardım edebilecek veya girdi sunabilecek herkese teşekkürler!
Acı biber
Birden çok if ifadesinde kafa karıştı
/////////////////// PAZAR GÜNÜ İŞLEM YAPMAYA BAŞLAYIN///////////////////////
Başlangıç Günü=7; Başlangıç Saati=1; BaşlangıçDakikası=55;
{
if(TimeDayOfWeek(TimeCurrent())==StartDay)
{
if(TimeHour(TimeCurrent())==BaşlangıçSaati)
{
if(TimeMinute(TimeCurrent())==StartMinute)
{
}
}
}
}
EA'mı yedinci gün rolleri (7. Gün) ve 1. Saat rolleri ve yaklaşık 55 dakikalık roller olduğunda etkinleştirmeye çalışıyorum. Neyi yanlış yapıyorum. Bugün bilgisayarı başlattım ve EA hemen işlem yapmaya başladı (1. saatten önce!). Yardım lütfen.
Teşekkürler!
Dave
Merhaba,
Daha Yüksek Zaman Çerçevesi grafiğinde Alt Zaman Çerçevesi MA çaprazını nasıl çizeceğimi bilmek istiyorum.
örneğin, M15'in MA5 ve MA10'u kesiştiğinde H1 grafiğinde bir ok çizmek istiyorum.
Lütfen bana haber ver.
Teşekkürler,
JForex.Herhangi bir grafikteki bir MA, bir MA'nın daha yüksek / daha düşük bir zaman diliminde sadece daha yüksek / daha düşük bir versiyonudur. Örneğin, 5 dakikalık bir grafiğe 60MA koyarsanız ancak bir saatlik grafikte nasıl göründüğünü görmek isterseniz, 60 ile 12'yi (bir saatte 5 dakikalık aralıklarla) çarpmanız yeterlidir. Yani bir saatlik grafikte 720 MA, 5 dakikalık bir grafikte 60 MA ile aynıdır.
Mantıklı olmak?
Lüks
///////////////////PAZAR GÜNÜ İŞLEM YAPMAYA BAŞLAYIN///////////////////////
Başlangıç Günü=7; Başlangıç Saati=1; BaşlangıçDakikası=55;
{
if(TimeDayOfWeek(TimeCurrent())==StartDay)
{
if(TimeHour(TimeCurrent())==BaşlangıçSaati)
{
if(TimeMinute(TimeCurrent())==StartMinute)
{
}
}
}
}
EA'mı yedinci gün rolleri (7. Gün) ve 1. Saat rolleri ve 55 dakikalık roller etrafında etkinleştirmeye çalışıyorum. Neyi yanlış yapıyorum. Bugün bilgisayarı başlattım ve EA hemen işlem yapmaya başladı (1. saatten önce!). Yardım lütfen.
Teşekkürler!
DaveYardım dosyasına bir kez daha bakın.
Bilinen son sunucu saatinin haftanın geçerli sıfır tabanlı gününü (0-Pazar,1,2,3,4,5,6) döndürür.
Lüks
Herhangi biri, EA'nın birkaç durumda eşzamanlı emirleri yürütmesine izin vermek için kodu nasıl değiştireceğimi daha iyi anlamama yardımcı olabilir (başka bir deyişle, aynı EA'yı aynı anda birkaç çift üzerinde test ediyorum ve her örnek için farklı sihirli sayılar kullanıyorum.)
Orijinal kod şunları içerir:
int toplam=SiparişToplam();
if(toplam<1)
Ve bence problem burada. Sayıyı arttırırsam, aynı çift için aynı çubukta (M15) sadece birkaç emir yürütür. Eğer if(toplam<1) bırakılırsa, farklı çiftlerde aynı anda emir verilmesine izin verilmez.
Çift başına bir seferde yalnızca bir siparişe izin vermek için onay veya çubukla ilgili bir şeyi değiştirebilir miyim, ancak EA (farklı sihirli sayılarla) eklenmiş tüm çiftler için birkaç siparişe izin verebilir miyim?
Yardım edebilecek veya girdi sunabilecek herkese teşekkürler!
Acı biberOrdersTotal, sihirli sayıyı dikkate almayan yerleşik bir işlevdir . OrdersTotal'ı kullanan ancak sihirli sayıya ve muhtemelen sembole göre filtreleyen kendi işlevinizi yazmanız gerekir. Burada ve başka yerlerde bir sürü örnek var.
İyi şanlar.
Lüks
Yardım dosyasına bir kez daha bakın. Lüks
StartDay'i 0 olarak değiştirdim ve StartHour'u brokerimin mevcut GMT saatiyle değiştirdim ve StartMinute'i GMT dakikalarından 5 dakika önceye değiştirdim - GMT saati benim başlangıç saatimle eşleştiğinde hala çalışıyor. Yardım dosyalarına baktım ve birden fazla if ifadesi göstermiyorlar. Çoklu if ifadesi her zaman kafamı karıştırır. Neyi yanlış yapıyorum? Programın Pazar günü uygun başlangıç saatine kadar işlem yapmamasını ve saat = Pazar saatinin başlangıcına kadar "İşlem Dışı Zaman" yorumu yapmasını istiyorum.
Çok karışık!!
?????
OrdersTotal, sihirli sayıyı dikkate almayan yerleşik bir işlevdir. OrdersTotal'ı kullanan ancak sihirli sayıya ve muhtemelen sembole göre filtreleyen kendi işlevinizi yazmanız gerekir. Burada ve başka yerlerde bir sürü örnek var.
İyi şanlar.
Lüksİşte yaptığım ve biraz kullandığım bir tane:
{
int intCount=0;
int intPOS=0;
bool boolTerm=false;
while(boolTerm==false)
{
if(OrderSelect(intPOS,SELECT_BY_POS))
{
if(OrderMagicNumber()==intMagic) intCount++;
intPOS++;
}
else
boolTerm=true;
}
return(intCount);
}
[/PHP]
And if you want to close only a certain order by magic number:
{
int intOffset=0;
int Count = OTBM(intMagic);
while(OTBM(intMagic)>0 && Count > 0)
{
OrderSelect(intOffset,SELECT_BY_POS);
if(OrderMagicNumber()==intMagic)
{
if(OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),999,Red);
else if(OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),999,Orange);
Count--;
}
else {
intOffset++;
}
}
return(0);
}
Order Profit By Magic:
[PHP]double OPBM(int intMagic)//OrderProfitByMagic
{
double dblProfit=0;
int intPOS=0;
bool boolTerm=false;
while(boolTerm==false)
{
if(OrderSelect(intPOS,SELECT_BY_POS))
{
if(OrderMagicNumber()==intMagic) dblProfit=dblProfit+OrderProfit();
intPOS++;
}
else
boolTerm=true;
}
return(dblProfit);
}
Umarım yardımcı olur.
Herhangi bir grafikteki bir MA, bir MA'nın daha yüksek / daha düşük bir zaman diliminde sadece daha yüksek / daha düşük bir versiyonudur. Örneğin, 5 dakikalık bir grafiğe 60MA koyarsanız ancak bir saatlik grafikte nasıl göründüğünü görmek isterseniz, 60 ile 12'yi (bir saatte 5 dakikalık aralıklarla) çarpmanız yeterlidir. Yani bir saatlik grafikte 720 MA, 5 dakikalık bir grafikte 60 MA ile aynıdır.
Mantıklı olmak?
LüksTamamen mantıklı. H1 grafiğinde bir M5 10MA'yı nasıl göreceksiniz?
10/12=0.84. H1 grafiğine 0.84 MA koyabilir misiniz? Numara.
Ancak diğer şekilde çalışır - H1 10MA = M5 120MA.
Öyleyse sorum şu, H4 gibi daha yüksek bir Zaman Çerçevesinde 5MA çaprazını nasıl görebilirim.
Teşekkürler.
MQL4'te Döngü için
Kodlayıcıların Gurusu'nun MQL4 Kursunu okurken, Ders 5'teki 'for' döngüsünde bu kısımla karşılaştım ve kafam karıştı. Yalnızca bir test ifadesi olabileceğini söylüyor. Ancak gösterilen örnekler 2 test ifadesi içerir.
int i;
int j;
for(i=0,j=0;i<15,i<;i++,j++)
Yazdır(i);
int i;
for(i=15;i>0,i<;i--)
Yazdır(i);
Lütfen biri aydınlatsın mı?
Teşekkürler.