[UYARI, KONU KAPALI!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde. - sayfa 934
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
Sorun. Bana kimin yapabileceğini söyle.
Sipariş Seçiminde (0,SELECT_BY_POS, MODE_HISTORY )
OrderProfit() içinde, geçmiş listesindeki ilk karı döndürür,
tarih listesindeki son karı tam olarak döndürmesini nasıl sağlayabilirim?
şöyle denedim:
A=SiparişlerTarihiToplam();
OrderSelect(A,SELECT_BY_POS,MODE_HISTORY);
OrderProfit() hiçbir şey döndürmez)
)) ama pulluk yapmaz
Profesyoneller, bana senaryoyu nasıl düzelteceğimi söyleyin. Verileri dışa aktarmak için bir komut dosyası kullanıyorum.
Sonuç olarak, 5 veri dosyası alıyorum. İlk enstrüman için, ardından ikincisi için veri içeren 1 dosya almak istiyorum. Nedense her şeyi tek bir dosyada birleştirmek imkansız... Teşekkürler.
Profesyoneller, bana senaryoyu nasıl düzelteceğimi söyleyin. Verileri dışa aktarmak için bir komut dosyası kullanıyorum.
Sonuç olarak, 5 veri dosyası alıyorum. İlk enstrüman için, ardından ikincisi için veri içeren 1 dosya almak istiyorum. Her şeyi tek bir dosyada birleştirmek için bir şey çalışmıyor ... Teşekkürler.
Okuma ve yazma için açık dosyayı kullanın, dosyanın sonuna gidin ve ekleyin
FileOpen(fname, FILE_WRITE|FILE_READ );
Dosya Arama()
sana yardım etmek
Sorun. Bana kimin yapabileceğini söyle.
OrderSelect'te(0,SELECT_BY_POS,MODE_HISTORY)
OrderProfit() içinde, geçmiş listesindeki ilk karı döndürür,
tarih listesindeki son karı tam olarak döndürmesini nasıl sağlayabilirim?
şöyle denedim:
A=SiparişlerTarihiToplam();
OrderSelect(A,SELECT_BY_POS,MODE_HISTORY);
OrderProfit() hiçbir şey döndürmez)
)) ama pulluk yapmaz
Yani son arama emrinin hala bulunması gerekiyor. Ve sonuncusu nedir. Açılış saati veya kapanış saati. Ve elbette, hangi aracı arayacağınızı da unutmayın.
işlemin maksimum hacmini ciddi şekilde sınırlamak için danışmana ne yazacağımı söyle, sadece hangi hacmin açılacağına karar verir, ancak büyük bir hacim açar ve sonra bir boşaltma meydana gelir, onu sınırlamak gerekir, böylece 0,5'i geçmez
Bir insan bilseydi, kendisi yapardı. Ve burada başka birinin kodunda değişiklik yapmanız gerekiyor gibi görünüyor
Teşekkür ederim
extern double TP=20; // ТР для открываемого ордера
extern double Lot=0.01; // Жестко заданное колич. лотов
datetime time;
//--------------------------------------------------------------- 2 --
int start()
{
int Total;
double
M_0,
M_1;
bool
Ans =false, // Ответ сервера после закрытия
Cls_B=false, // Критерий для закрытия Buy
Cls_S=false, // Критерий для закрытия Sell
Opn_B=false, // Критерий для открытия Buy
Opn_S=false; // Критерий для открытия Sell
//--------------------------------------------------------------- 3 --
// Учёт ордеров
for(int i=OrdersTotal()-1;i>=0;i--)
if (OrderSelect(i,SELECT_BY_POS)&&OrderSymbol()==Symbol()&&OrderType()>1)Total++;
if(Total!=0 || time==Time[1])return;
// Торговые критерии
M_0=iOsMA(NULL,0,13,34,8,0,0); // 0 бар
M_1=iOsMA(NULL,0,13,34,8,0,1); // 1 бар
if (M_1<0 && M_0>0)
Opn_B=true;
if (M_1>0 && M_0<0)
Opn_S=true;
//--------------------------------------------------------------- 7 --
if (Opn_B)
{OrderSend(Symbol(),OP_BUY,Lot,Ask,0,Bid-SL*Point,Bid+TP*Point);time=Time[1];}
if (Opn_S)
{OrderSend(Symbol(),OP_SELL,Lot,Bid,0,Ask+SL*Point,Ask-TP*Point);time=Time[1];}
}
bir şey çalışmıyor, belki burada bir şeyi değiştirmem ya da başlangıçtan sonra koymam gerekiyor.
Kağıt üzerindeki kodunuzu anladığım bir dilde Rusça'ya çevirmeye çalıştım ama ulaşmıyor,
çok karmaşık, özellikle sonraki her bir koşulda ve sekiz koşuldan biri olduğunda
Tabii ki böyle bir kodu yaratanın sadece bir mucize olduğunu iddia etmiyorum ama bu benim için tam bir sapıklık (iyi anlamda)
standart işlev dışında, her işleme ve koşula yorum eklemek için çok tembel olmayan.