[ARŞİV!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 4. - sayfa 372
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 iyi günler!
İki nazik kişiden cevaplar aldım ama ne yazık ki seçeneklerin hiçbiri çıkmadı.
Sevgili profesyoneller, lütfen bana daha fazla bilgi verin.
Belli bir şemaya göre siparişler açılır, açılış gününde kapanabilir veya 3 gün daha piyasada dolaşabilirler.
3 gündür devam eden bir siparişi bulup, ondan sonra açılan siparişleri kapatmadan kapatabilmek için nasıl kuracağımı çözemiyorum.
Tüm siparişler için açılış şeması aynıdır. Tüm sihirbazlara bir iz bırakıyorum. böylece: Magic_s =Magic_s+1.
Sistemin bu siparişi otomatik olarak bulması ve kapatması için varyant gereklidir, çünkü sistemi geçmiş veriler üzerinde test etmeye ihtiyaç var
Lütfen, birisi bu sorunun nasıl çözüleceğini biliyorsa - cevabı yazın. Çok minnettar olacağım :)
Anladım. Çok teşekkürler. İyi bir seçenek olarak, bu seçenekle ilgili tek şey, sistemi geçmiş verilere göre test edemiyorum. Burada da bir şekilde otomatik olarak kayıt olmak istedim. Başka seçenekler varsa lütfen yazın.
Geçmişi test etmek için, bir pozisyonu kapatma koşulunu belirlemeniz gerekir. Kar/zarar veya pozisyon ömrü, ör. 3 günden fazla değil. Bu, OrderModify ile siparişin/pozisyonun tarih/saat sona erme tarihini değiştirerek yapılabilir.
Evet, görünüşe göre kapanış koşullarımız olacak - bu pozisyonun ömrü, her şey doğru, en fazla 3 gün. Tam olarak anlayana kadar OrderModify hakkında okudum. Bu gece çözmeye çalışacağım. Çok hızlı cevabınız için tekrar teşekkürler :)
Üzgünüm, dilde değil, ama çok gerekli, belki birileri biliyordur.
Windows 7'de bazı dosyalar açılmayı reddetti. "Birlikte aç ..." a basıyorum, programı seçiyorum ve program seçim listesinde GÖRÜNMÜYOR. Bu sınırlamanın nasıl kaldırılacağını bilen var mı? XP için durum böyle değildi. Kahrolası yedi zaten tüm beyni yedi :(
Kayıt defterini temizlemeniz gerektiğinden şüpheleniyorum. Özellikle, FB2 formatı çift tıklayarak açılmaz. CoolReader'ı başlatıyorum ve her şey yolunda. onlara açılır. fb2 dosya biçimini çalıştırmak için çift tıklamak istemiyor.
JV-16 yardımcı programıyla kayıt defterinde bir arama başlattım (her zaman kullandım) - bu yüzden fb2'den bahsedildiği kadar çok kayıt satırı buldu ki bu sadece korkunç - öldürmek korkutucu. Ne yapalım? Google arama hiçbir şey çıkmadı :(
Selamlar!
kodu değiştirmeye yardım edin. Kod yeni değil, ama bir şey benim için çalışmıyor.
işte kod:
Ne kadar uğraşırsam uğraşayım, eksi bir anlaşmaya varıldığında döngünün açılması için her şeyi yapamadım ve sonra olumlu bir anlaşmaya varıldığında, eksi bir anlaşma olsaydı, eksi bakiyeyi azaltırdım. sıfırdan büyük olan son siparişin kapalı karı. Yani, emir negatif olarak kapanırsa, o zaman çalışmaya başlarız, eğer bir sonraki kâr ticareti kayıptan büyükse, o zaman kapatırız, eğer bir sonraki ticaret artıda kapanırsa, ancak bu artı bir eksiden fazla değilse, önceki siparişler için, eksi bakiyeden bu artıyı çıkarırız ve bir sonraki siparişi, ondan önce kırmızıda kapattığımız için zaten daha düşük olan yeni göstergeyle karşılaştırırız. Trol üzerinde kapatıyoruz. Bu nedenle, pozitif bir dengeye izin verilir.
Üzgünüm, dilde değil, ama çok gerekli, belki birileri biliyordur.
Windows 7'de bazı dosyalar açılmayı reddetti. "Birlikte aç ..." a basıyorum, programı seçiyorum ve program seçim listesinde GÖRÜNMÜYOR. Bu sınırlamanın nasıl kaldırılacağını bilen var mı? XP için durum böyle değildi. Kahrolası yedi zaten tüm beyni yedi :(
Kayıt defterini temizlemeniz gerektiğinden şüpheleniyorum. Özellikle, FB2 formatı çift tıklayarak açılmaz. CoolReader'ı başlatıyorum ve her şey yolunda. onlara açılır. fb2 dosya biçimini çalıştırmak için çift tıklamak istemiyor.
JV-16 yardımcı programıyla kayıt defterinde bir arama başlattım (her zaman kullandım) - bu yüzden fb2'den bahsedildiği kadar çok kayıt satırı buldu ki bu sadece korkunç - öldürmek korkutucu. Ne yapalım? Google arama hiçbir şey çıkmadı :(
Başlat - Tüm Programlar - Varsayılan Programlar - Eşlemeleri Ayarla
Üzgünüm, dilde değil, ama çok gerekli, belki birileri biliyordur.
Windows 7'de bazı dosyalar açılmayı reddetti. "Birlikte aç ..." a basıyorum, programı seçiyorum ve program seçim listesinde GÖRÜNMÜYOR. Bu sınırlamanın nasıl kaldırılacağını bilen var mı? XP için durum böyle değildi. Kahrolası yedi zaten tüm beyni yedi :(
Kayıt defterini temizlemeniz gerektiğinden şüpheleniyorum. Özellikle, FB2 formatı çift tıklayarak açılmaz. CoolReader'ı başlatıyorum ve her şey yolunda. onlara açılır. fb2 dosya biçimini çalıştırmak için çift tıklamak istemiyor.
JV-16 yardımcı programıyla kayıt defterinde bir arama başlattım (her zaman kullandım) - bu yüzden fb2'den bahsedildiği kadar çok kayıt satırı buldu ki bu sadece korkunç - öldürmek korkutucu. Ne yapalım? Google arama hiçbir şey çıkmadı :(
Beyler... kim bilir yardım edin!!!!
Bir sorunum var ve nasıl çözüleceğine dair hiçbir fikrim yok, açıklamaya çalışacağım.
Yani gönderdiğim kodda 2 fonksiyon var
//+------------------------------------------- --------------------+
//| kapanış için bir dizi bilet hazırlayın |
//+------------------------------------------- --------------------+
void ReadTicketsToClose(int sinyal, bool Revers, int & TicketClose[][2], double & lot[],double arrayTickets[][9])
{
int size=ArrayRange(arrayTickets,0);
//----
if (boyut==0) dönüş;
int i,type,bilet,kapatSize;
için (i=0;i<size;i++)
{
type=arrayTickets[i][1];
// emir türü market değilse, atla
(type>OP_SELL) devam ederse;
if (Ters) // piyasa emri türünü tersine çevir
{
if (type==OP_BUY) type=OP_SELL; başka tip=OP_BUY;
}
// burada her açık sipariş için kaderine karar veriyoruz
// piyasada bırakın veya kapanışta diziye ekleyin
if (tür==OP_BUY)
{
//
// satın alma işleminden ayrılmaya izin veren kod
// Örnek olarak
(signal==OP_BUY) devam ederse;
}
if (tür==OP_SEL)
{
//
// satıştan ayrılmaya izin veren kod
// Örnek olarak
(sinyal==OP_SELL) devam ederse;
}
closeSize=ArrayRange(ticketsClose,0);
ArrayResize(ticketsClose,closeSize+1);
ArrayResize(lots,closeSize+1);
TicketClose[closeSize][0] = arrayTickets[i][0]; // # bilet
TicketClose[closeSize][1] = arrayTickets[i][1]; // sipariş türü
// burada kaç lotun kapatılması gerektiğini belirtiyoruz
lot[closeSize] = arrayTickets[i][2]; // kapalı hacim
// kısmen kapatılabilir, o zaman satırı yukarıdan yeniden yazmanız gerekir
}
//----
dönüş;
}
//+------------------------------------------- --------------------+
//| Belirtilen biletlerle siparişleri kapatır |
//+------------------------------------------- --------------------+
void CloseMarketOrders(int biletArray[][2], çift lotArray[])
{
//----
int i,size=ArrayRange(ticketsArray,0);
if (boyut==0) dönüş;
int bilet,tür;
çift lot;
bool res;
int toplam=SiparişToplam();
için (i=0;i<size;i++)
{
bilet = biletArray[i][0];
type = ticketArray[i][1];
lot = lotArray[i];
Yeniler(); // her ihtimale karşı, pazar ortamı hakkındaki bilgileri güncelleyin
// satın almaları kapatmak için blok
if (tür==OP_BUY)
{
res = OrderClose(bilet,lot,Teklif,Kayma,Turuncu);
eğer (! res)
{
Print("Satın alma siparişi # kapatılamadı",bilet,"! Hata #",GetLastError());
// daha fazla hata işleme, kendiniz yazın
}
}
// satış kapanış bloğu
if (tür==OP_SEL)
{
res = OrderClose(bilet,lot,Ask,Kayma,Turuncu);
eğer (! res)
{
Print("Satış emri # kapatılamadı",bilet,"! Hata #",GetLastError());
// daha fazla hata işleme, kendiniz yazın
}
}
}
//----
dönüş;
}
Void ReadTicketsToClose(int signal, bool Revers, int & TicketClose[][2], double & lot[],double arrayTickets[][9]) işlevinde, siparişten ayrılmaya karar vereceğiniz bir koşul ayarlamanız gerekir yada kapat...
Koşulları ayarlamayı denedim ama işe yaramıyor....
Belki birisi bu işlevlerde bir hata olup olmadığına bakar ve ben mi karıştırdım ....
Başlat - Tüm Programlar - Varsayılan Programlar - Eşlemeleri Ayarla
Bu işlem, program seçim penceresine götürür. Bir program belirliyoruz ve orada görünmüyor.