[UYARI, KONU KAPALI!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde. - sayfa 768
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
Sadece fonksiyonu çağırmam gerekiyor ve hepsi bu, sadece bir satıra ihtiyacım var "eğer birden fazla sipariş varsa .... o zaman" ve hepsi bu ve bana burada bütün bir fonksiyon sunuyorsunuz
sipariş verilerini bu şekilde saklıyorum
Bu, kütüphaneye basit bir yazma işlemidir.
Girdi, hesaplanan siparişin türüdür ve büyüsü, açık veya verilen siparişlerin sayısını döndürür.
bu şekilde kullanılabilir
if ((FastEma - SmallEma) > Karşılaştırıcı*Nokta && ChPos(OP_BUY,1111) < OpenPosition)
Bu, kütüphaneye basit bir yazma işlemidir.
Girdi, hesaplanan siparişin türüdür ve büyüsü, açık veya verilen siparişlerin sayısını döndürür.
bu şekilde kullanılabilir
if ((FastEma - SmallEma) > Karşılaştırıcı*Nokta && ChPos(OP_BUY,1111) < OpenPosition)
Böyle bir işlevim var ve buna ihtiyacım yok, ihtiyacım var
sadece bir satır "eğer birden fazla sipariş varsa .... o zaman" ve bu kadar
gösterdiğin işleve sahip verilerim burada saklanıyor
ve işte ona benziyor
yakalanmış gibi görünüyor
static int aaa = OrdersHistoryTotal()+ OrdersTotal()
if (koşulunuz && aaa < OrdersHistoryTotal()+ OrdersTotal() )
{
operatörler
aaa=OrdersHistoryTotal()+OrdersTotal()
}
Eğer öyleyse, o zaman sihirbazları hesaba katarsak, işlevde hala daha iyidir. Ne çağrıştırdığını seslendirebilirsin. Mantık biraz garip doğru anladıysam başka bir emir açılırsa işlem yapmanız gerekiyor OpenPosition'dan daha kolay emir açmak değil mi?
P S Fonksiyonunuz toplam açık emir ve verilen bekleyen emir sayısını döndürür.Kaç OP_BUY emri varsa, OP_BUYLIMIT OP_SELLLIMIT OP_SELL ve diğerleri varsa, vermez.
evet, anladım, şimdi if işlevindeki sorun delinmenin ne olduğunu anlamamam değil, ne yaptım
genel olarak, öz, ilk anlamın yerine getirileceği şekildedir, onlar hakkında şikayet yoktur.
ama istemiyorsa (HaveBuyLimitOrderEnd== true )
{ModifyBuyStopOrder(PRAskS); // Seçmek
} }
kelimelerle, kulağa şöyle geliyor: HaveBuyLimitOrderEnd emri varsa, o zaman bunu fiyat değişikliği ile değiştireceğiz PRAskS
bir şey doğru değil, ama anlayamadığım şey, HaveBuyLimitOrderEnd'in değerini, yazıdaki yukarıdaki koddan void Myorders () 'dan alıyorum
ve evet, bu değer if(bt==1&&bl==7) doğruysa ana tobish'tir, aşağıdaki her şeyi uygularız
evet, büyük olasılıkla HaveBuyLimitOrderEnd== true ile ilgili bir şey çünkü OrderLots()==3*Çok şey ayarladım, şimdi her şey çalışıyor, tüm siparişleri çok fazla 0.3 ile değiştirmeye başlıyor
Neyin kırmızıyla vurgulandığına dikkat edin. İşlem emirlerinin türü aynıdır, ancak satırdaki değişkenler olması gerektiği gibi farklı şekilde ayarlanır.
evet öyle olmalı çünkü farklı bir açma fonksiyonu var ve isteği OrderType() ile yapmıyorum ama tobish bayrağının açık olup olmadığını soracağım ama sorun daha çok bu fonksiyonda değil çünkü geri kalanı istekler de çalışmıyor, önce ben attım VE BU İŞLEV İÇİN NORMALDE AÇIK
SORUN OPERATÖRDEKİ SORUNDADIR
Sorun başka bir yerde gibi görünüyor. Ancak kodun tamamını görmeniz gerekir.
Sorun başka bir yerde gibi görünüyor. Ancak kodun tamamını görmeniz gerekir.
kesinlikle bir başkasında değil, diğer her şey çalışıyor, sorun şu ki, istek (HaveBuyLimitOrderEnd == true) doğru değil, bu yüzden ona neyin değiştirilmesi ve silinmesi gerektiğini başka nasıl söyleyeceğimi şaşırıyorum,
veya sorgunun yapısı doğru değil
if(bs==1&&bl==3)
{OpenBuyLimitOrderEnd(Lot*15,PRaskL);
if (HaveBuyLimitOrderEnd==true)
{ModifyBuyStopOrder(PRAskS);
} }
evet öyle olmalı çünkü farklı bir açma fonksiyonu var ve isteği OrderType() ile yapmıyorum ama tobish bayrağının açık olup olmadığını soracağım ama sorun daha çok bu fonksiyonda değil çünkü geri kalanı istekler de çalışmıyor, önce ben attım VE BU İŞLEV İÇİN NORMALDE AÇIK
SORUN OPERATÖRDEKİ SORUNDADIR
Ancak ilginç bir şekilde, kırmızı ile vurgulanan işlevlerde HaveBuyLimitOrderEnd bayrağı true olarak ayarlanır, değilse, myorders() öğesini if öncesinde çağırmanız gerekir. Aksi takdirde, FIG orada ne olduğunu bilir. Ve her ihtimale karşı, bayraklar (değişkenler)
HaveBuyOrder=yanlış;
HaveSellOrder=yanlış;
HaveBuyStopOrder = yanlış;
HaveSellStopOrder = yanlış;
HaveBuyLimitOrder=false;
HaveSellLimitOrder=false;
HaveBuyLimitOrderEnd = yanlış;
HaveSellLimitOrderEnd = false;
küresel düzeyde tanımlanmalıdır.
Ancak ilginç bir şekilde, kırmızı ile vurgulanan işlevlerde HaveBuyLimitOrderEnd bayrağı true olarak ayarlanır, değilse, myorders() öğesini if öncesinde çağırmanız gerekir. Aksi takdirde, FIG orada ne olduğunu bilir. Ve her ihtimale karşı, bayraklar (değişkenler)
HaveBuyOrder=yanlış;
HaveSellOrder=yanlış;
HaveBuyStopOrder = yanlış;
HaveSellStopOrder = yanlış;
HaveBuyLimitOrder=false;
HaveSellLimitOrder=false;
HaveBuyLimitOrderEnd = yanlış;
HaveSellLimitOrderEnd = false;
küresel düzeyde tanımlanmalıdır.
bu küresel
bool HaveBuyOrder; // açık piyasa satın alma emirleri için bayrak
bool HaveSellOrder; // açık piyasa satış emirleri için bayrak
bool HaveBuyStopSipariş; // açık bekleyen satın alma siparişleri için bayrak
bool HaveSellStopOrder; // açık bekleyen satış emirleri için bayrak
bool HaveBuyLimitOrder; // açık bekleyen satın alma siparişleri için bayrak
bool HaveSellLimitOrder; // açık bekleyen satış emirleri için bayrak
bool HaveBuyLimitOrderEnd; // açık bekleyen satın alma siparişleri için bayrak
bool HaveSellLimitOrderEnd; // açık bekleyen satış emirleri için bayrak
bu sipariş açma işlevinde
bilet = OrderSend(Curr_symb,OP_BUYSTOP, Lot, PRAskS, Slippage, SL, TP, 0, Magic, 0, CLR_NONE );
if (bilet > 0) {
HaveBuyStopOrder = true;
if (OrderSelect(bilet, SELECT_BY_TICKET,MODE_TRADES)) Print("BuyStop siparişi verme işlevi: ", OrderOpenPrice());
}
else Print("Hata # ", GetLastError(), " BuyStop siparişi verme işlevi",MarketInfo(Curr_symb,MODE_ASK));
bilet iadesi);
}
BAŞKA HER ŞEYİN ÇALIŞTIĞINI SÖYLEYİN