Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 869
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
Affedersiniz, aynı şeye yüzlerce kez başvurmak ayıp.
Neredeyse bir aydır kapıda bir koç gibi bakıyorum. Onu almam.
Görev, hareketli ortalama 13 olan daha küçük bir düzenin hareketli ortalamasını hesaplamaktır.
yani 12. dönemi 13'e göre hesaplayın
Merhaba! Saygın gurulardan biri, çek, pliz, ilk danışmanım. Devam etmek mümkün mü? Belki bir şey kaçırdı? Herhangi bir özellik için çok minnettar olurum. Ve bir şey daha: forumda bir yerde sadece bir pozisyonun nasıl açılacağını gördüm, ama kopyalamadım ve şimdi bulamıyorum. Yardım edin lütfen.
Teşekkür ederim!
// Deneme EA
//------------------------------------------------ --------------------
//------Giriş verileri:------------------------------------------ --------------------
giriş çift Lot = 0.1; // Çok güzelsin
input int MovingPeriod =5; // Uzlaşma dönemi MA
giriş int MovingShift =0; // MA'yı Kaydır
giriş int InpBandsPeriod=10; // Dönem Bollinger Bantları
giriş int InpBandsShift=0; // Bollinger Bantlarını Kaydır
çift giriş InpBandsDeviations=2.0; // Sapma Bollinger Bantları
girdi int K_Period =30; // %K Stokastik dönem
giriş intD_Period=10; // %D Stokastik dönem
girdi int Yavaş şafak =8; // Stokastik Yavaşlama
giriş rengi clMainStoch =Sarı; // Stokastik ana hattın rengi
giriş rengi clSignalStoch =Kırmızı; // Stokastik sinyal çizgisi rengi
// -----Genel Değişkenleri Bildir:------------------------------------------ --------- ---
çift MA_0, MA_1, MA_2; // 0, 1 ve 2 barda MA değeri
çift MB_0, MB_1, MB_2; // 0, 1 ve 2 çubuklarda ortalama Bollinger değeri
doubleExtUpperBuffer[]; // Üst Bollinger Doğrusu Değeri
çift ExtLowerBuffer[]; // Alt Bollinger Doğrusu Değeri
çift Delta_0, Delta_1; // Üst ve alt değerler arasındaki fark...
// ... 0 ve 1 çubuklarında bollinger çizgileri
çift Sarı_0, Sarı_1, Sarı_2; // 0, 1 ve 2 barda ANA değer
çift Red_0, Red_1, Red_2; // 0, 1 ve 2 barda SİNYAL değeri
//-------Gitmek!--------------------------------------- ---------------------------
int start() //Özel. başlatma işlevi
{
//MA gösterge işlevine atıfta bulunarak
MA_0=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
MA_1=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,1);
MA_2=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,2);
// Bollinger Bantları işlevini çağırma
MB_0=iBands(NULL,0,InpBandsPeriod,InpBandsShift,InpBandsDeviations,PRICE_CLOSE,0);
MB_1=iBands(NULL,0,InpBandsPeriod,InpBandsShift,InpBandsDeviations,PRICE_CLOSE,1);
MB_2=iBands(NULL,0,InpBandsPeriod,InpBandsShift,InpBandsDeviations,PRICE_CLOSE,2);
Delta_0=iBands(ExtUpperBuffer[0]-ExtLowerBuffer[0]);
Delta_1=iBands(ExtUpperBuffer[1]-ExtLowerBuffer[1]);
// Stokastik fonksiyonu çağırmak
Yellow_0=iStochastic(NULL,0,K_Period,D_Period,Yavaş Şafak,MODE_SMA,0,MODE_MAIN,0);
Yellow_1=iStochastic(NULL,0,K_Period,D_Period,Yavaş Şafak,MODE_SMA,0,MODE_MAIN,1);
Yellow_2=iStochastic(NULL,0,K_Period,D_Period,Yavaş Şafak,MODE_SMA,0,MODE_MAIN,2);
Red_0=iStochastic(NULL,0,K_Period,D_Period,Yavaş Şafak,MODE_SMA,0,MODE_SIGNAL,0);
Red_1=iStochastic(NULL,0,K_Period,D_Period,Slowdawn,MODE_SMA,0,MODE_SIGNAL,1);
Red_2=iStochastic(NULL,0,K_Period,D_Period,Yavaş Şafak,MODE_SMA,0,MODE_SIGNAL,2);
//-------Stokastik durumlar:------------------------------------- - ---------------
//Piyasa aşırı satın alındı
double MOB()=(Yellow_0>=80 && Red_0>=80); //Yerel değişken
//Piyasa aşırı satıldı
double MOS()=(Yellow_0<=20 && Red_0<=20); //Yerel değişken
//Pazar tamam
double MN()=(20<Yellow_0<80 && 20<Red_0<80); //Yerel değişken
//Kritik durum
double MC1()=(20<Yellow_0<80 && Red_0<=20); //Yerel değişken
double MC2()=(20<Yellow_0<80 && Red_0>=80); //Yerel değişken
double MC3()=(20<Red_0<80 && Yellow_0<=20); //Yerel değişken
double MC4()=(20<Red_0<80 && Yellow_0>=80); //Yerel değişken
//------Bir pozisyon açmak için örnek (benim) emrim-------------------------------- --------------------
if (Delta_0 > Delta_1 && MOB()==true) // Piyasa aşırı satın alındı ama delta genişliyor
{ if (MB_2 > MB_1 && MB_1 < MB_0) //Alt Bollinger Break
OrderSend(Symbol(),OP_BUY,Lots,Ask,0,Bid-1500*Point,Bid+1500*Point);//bir SATIN AL emri aç
Uyarı(GetLastError()); //Hata mesajı
Alert("Konum açık lot("Lot"),price("Sor")."); // Satın alma mesajı
Takipte: AL (ve HÜCRE) pozisyonları, pozisyonun açıldığı koşullara bağlı olarak farklı koşullar altında açılabilir. (ör. BYE) kendi kapanış koşullarına sahip olacaktır.
Bunu MKL dilinde nasıl iletebiliriz?
Takipte: AL (ve HÜCRE) pozisyonları, pozisyonun açıldığı koşullara bağlı olarak farklı koşullar altında açılabilir. (ör. BYE) kendi kapanış koşullarına sahip olacaktır.
Bunu MKL dilinde nasıl iletebiliriz?
Bir döngüde bir sipariş seçiyoruz. Bu Bai ise ve verilerin geri kalanı (sembol, sihir, başka bir şey) "kendi kapanış koşulları" altında kapatılması gerekenin bu olduğu kriterini karşılıyorsa, "kendi kapanış koşulları" mevcutsa onu kapatırız. .
Benim için biraz belirsiz, ama biraz araştırınca anlayacağımı düşünüyorum. Sovyetler ülkesinden bazı yoldaşlar gibi, geri dönmediğiniz ve bilginin doruklarından öğretmediğiniz için çok teşekkür ederim.
Şöyle kapatmayı düşündüm:
//-------Örnek (benim) emrim kapanış bağlamalı bir pozisyon açmak için (bilet ile)--------------------------- ----------------------------
// SATIN AL emrini açan yerel değişken (63. satır yerine)
int Ticket_1() = (OrderSend(Symbol(),OP_BUY,Lots,Ask,0,Bid-1500*Puan,Bid+1500*Puan));
//------O zaman bu özel siparişin kapanışı aşağıdaki gibi olabilir:----------------------------- ------------------------
if (Ticket_1()==true) //1. sipariş açıldıysa, o zaman...
{ if (Yellow_0>Red_0 && (Yellow_0-Red_0)<(Yellow_1-Red_1)) //Sarı kırmızının üzerinde, daralma(koşul)
{ if (MA_2 < MA_1 && MA_1 > MA_0);} //Ortanın üst kırılması (koşul)
else (Yellow_0>Red_0 && (Yellow_0-Red_0)>(Yellow_1-Red_1)) //Sarı kırmızının üzerinde, extension(alternatif koşul)
{ if (MB_2 < MB_1 && MB_1 > MB_0);} //Üst Bollinger Arası (koşul)
bool Ans=SiparişKapat(Ticket,Lot,Bid,0); //...bir siparişi kapatma (yerel değişken)
Alert("Siparişi partiye göre kapatmaya çalış("Lot"),price("Sor"). Cevap bekleniyor..");
if (Ans==true) // Anladım :)
{
Uyarı ("Lot bazında kapalı emir ("Lot"), kapanış fiyatı ("Teklif");
kırmak; // Pozisyon kapatma döngüsünden çık
}
}
Lütfen bir önceki gönderiye göre de bir analiz yapın. Kalıcı olduğum için üzgünüm, ama görüyorsunuz - sorumlu olan tek kişi sizsiniz ... Teşekkürler!
Benim için biraz belirsiz, ama biraz araştırınca anlayacağımı düşünüyorum. Sovyetler ülkesinden bazı yoldaşlar gibi, geri dönmediğiniz ve bilginin doruklarından öğretmediğiniz için çok teşekkür ederim.
Şöyle kapatmayı düşündüm:
...Lütfen bir önceki gönderiye göre de bir analiz yapın. Kalıcı olduğum için üzgünüm, ama görüyorsunuz - sorumlu olan tek kişi sizsiniz ... Teşekkürler!
Her şey bir şekilde senin için karanlık.
1. Bir Satın Alma emrini kapatmak için bir koşulun meydana geldiği gerçeğini belirleyin
2. Bir döngüde, tüm açık pozisyonlara bakarsınız ve gerekli Satın Alma emrini bulduğunuzda kapatırsınız.
İşte örnek bir döngü:
Yani, mevcut sembolde (Uzman Danışmanın çalıştığı grafikte) ve magic 100500 ile (örneğin) bir Buy emrini kapatmak için fonksiyonu şu şekilde çağırmanız gerekir:
100500 sayısını yazmaya gerek yoktur, genellikle sihir zaten EA değişkeninde ayarlanmıştır, örneğin int Magic = 100500; Ardından 100500 yerine Magic'e girmeniz gerekir.
Seçilen pozisyonun kapatılması gereken döngüde, biletle bir siparişi kapatmak için fonksiyona bir çağrı olması gerektiğinden hiçbir şey yazmadım. Genellikle ticari sunucu dönüş kodlarının işlenmesiyle birlikte tam teşekküllü bir işlevin çağrısıdır. Doğrulama için, seçilen siparişi kapatmak için basit bir komut girebilirsiniz OrderClose();
Okuması çok daha kolay. Afedersiniz.
Yinelenenleri oluşturmamak için eski gönderiyi düzenleme fırsatı hala var;)
Yinelenenleri oluşturmamak için eski gönderiyi düzenleme fırsatı hala var;)
Her şey bir şekilde senin için karanlık.
1. Bir Satın Alma emrini kapatmak için bir koşulun meydana geldiği gerçeğini belirleyin
2. Bir döngüde, tüm açık pozisyonlara bakarsınız ve gerekli Satın Alma emrini bulduğunuzda kapatırsınız.
İşte örnek bir döngü:
Yani, mevcut sembolde (Uzman Danışmanın çalıştığı grafikte) ve magic 100500 ile (örneğin) bir Buy emrini kapatmak için fonksiyonu şu şekilde çağırmanız gerekir:
100500 sayısını yazmaya gerek yoktur, genellikle sihir zaten EA değişkeninde ayarlanmıştır, örneğin int Magic = 100500; Ardından 100500 yerine Magic'e girmeniz gerekir.
Seçilen pozisyonun kapatılması gereken döngüde, biletle bir siparişi kapatmak için fonksiyona bir çağrı olması gerektiğinden hiçbir şey yazmadım. Genellikle bu, ticaret sunucusu dönüş kodlarının işlenmesiyle tam teşekküllü bir işlevin çağrısıdır. Doğrulama için, seçilen siparişi kapatmak için basit bir komut girebilirsiniz OrderClose();