[UYARI, KONU KAPALI!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde. - sayfa 67
![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Merhaba
Yazar olmaya karar verdim. Yabancı dilde bir şey yazmak istedim MQL 4. Bununla ilgili bir şeyler okudum, peki, arsa RSI'da bir sel pozisyonu açmak için basit bir uzman yazmak için doğdu. 8 periyot ile 70'i geçer ve pozisyonu kapattığınızda 30. seviyeyi geçer ve başka hiçbir şey olmaz. Yazdım, işte kod
//+------------------------------------------- --------------------+//| 4doc.mq4 |
//| Alex |
//| http://www.metaquotes.net |
//+------------------------------------------- --------------------+
# mülkiyet telif hakkı "Alex"
#özellik bağlantısı "http://www.metaquotes.net"
//---- giriş parametreleri
harici int PerRSI=8;
harici int MagicNumber=77771;
dış çift Lot = 1.0;
/+------------------------------------------------ ------------------+//| uzman başlatma işlevi |
//+------------------------------------------- --------------------+
int başlangıç()
{
int
cnt=0,
bilet,
Toplam;
çift
rsi_0, // Değer. rsi_0 akımı
rsi_1; // Değer. rsi_1 1. çubuk
if(çubuklar<100)
{
Print("100'den küçük barlar");
dönüş(0);
}
rsi_0=iRSI(NULL,0, PerRSI,0,0); // Geçerli çubuk
rsi_1=iRSI(NULL,0, PerRSI,0,1); // Geçerli çubuk artı 1
toplam=SiparişToplam();
if(toplam<1)
if(rsi_0 < rsi_1 && rsi_0 > 70) // Çizgi 70'i geçerse
{
bilet=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0, "My RSI", MagicNamber,0,Green);
if(bilet>0)
{
if(OrderSelect(bilet,SELECT_BY_TICKET,MODE_TRADES))
Print("SAT emri açıldı : ",OrderOpenPrice());
}
else Print("SATIŞ emrini açarken hata: ",GetLastError());
dönüş(0);
}
for(cnt=0;cnt<toplam;cnt++)
{
Yeniler();
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // bu açık bir pozisyon mu? OP_BUY veya OP_SELL
OrderSymbol()==Symbol()) // alet eşleşiyor mu?
{
if(OrderType()==OP_SELL) // tümceyi açtı
{
if(rsi_0 > rsi_1 && rsi_0 < 30) // Çizgi 30'u geçerse
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // pozisyonu kapat
dönüş(0); // çıkış
}}}}}}
Test ettim, her şey temelde aynı çıktı aranan. Kodu değiştirmeye karar verdim, böylece SS I – 14 seviye 100'ü geçiyor – bir seçim pozisyonu açıldı ve pozisyon kapatıldığında seviyeyi geçiyor - 100. Değişen RSI SS I altındaki kod , işte burada.
//+------------------------------------------- --------------------+//| CCI-DOC.mq4 |
//| Alex |
//| http://www.metaquotes.net |
//+------------------------------------------- --------------------+
# mülkiyet telif hakkı "Alex"
#özellik bağlantısı "http://www.metaquotes.net"
//---- giriş parametreleri
harici int PerCCI=14;
harici int MagicNumber=88881;
dış çift Lot = 1.0;
//+------------------------------------------- --------------------+//| uzman başlatma işlevi |
//+------------------------------------------- --------------------+
int başlangıç()
{
int
cnt=0,
bilet,
Toplam;
çift
cci_0, // Değer. cci_0 akım
cci_1; // Değer. cci_1 1. çubuk
if(çubuklar<100)
{
Print("100'den küçük barlar");
dönüş(0);
}
cci_0=iRSI(NULL,0, PerCCI,0,0); // Geçerli çubuk
cci_1=iRSI(NULL,0, PerCCI,0,1); // Geçerli çubuk artı 1
toplam=SiparişToplam();
if(toplam<1)
if(cci_0 < cci_1 && cci_0 > 100) // Satır 100'ü Geçerse
{
bilet=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0, "CCI'm", MagicNamber,0,Green);
if(bilet>0)
{
if(OrderSelect(bilet,SELECT_BY_TICKET,MODE_TRADES))
Print("SAT emri açıldı : ",OrderOpenPrice());
}
else Print("SATIŞ emrini açarken hata: ",GetLastError());
dönüş(0);
}
for(cnt=0;cnt<toplam;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // bu açık bir pozisyon mu? OP_BUY veya OP_SELL
OrderSymbol()==Symbol()) // alet eşleşiyor mu?
{
if(OrderType()==OP_SELL) // tümceyi açtı
{
if(cci_0 > cci_1 && cci_0 < -100) // Çizgi Geçerse -100
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // pozisyonu kapat
dönüş(0); // çıkış
}}}}}}
CCİ oldu Ölçek….. valla bir şey olmuyor satmıyor alım yapmıyor logda hata yok testin sonunda eğri grafiğini açıyor ama bu CC I değil RSI 70-30 ile 14 yıllık bir süre... .. Belki deneyimli yazarlardan biri anlar ve neden ve nasıl düzeltileceğini söyler.
o zaman dergideki demoda her şey daha net bir şekilde çizilecektir. Hatanın nerede aranacağı daha açıktır. kendisi...
Teşekkür ederim
Tekrar merhaba!!!!!!!
/göze batmadan/;-)) size 64. sayfada Mashka'nın ticaret koşullarıyla ilgili sorumu hatırlatmak isterim... Şimdiden teşekkürler (çaydanlığa tokat için)
Beyler, söyleyin bana, terminalde bir ticaret enstrümanının birkaç farklı zaman çizelgesini kullanırsam,
program tarafından trafik nasıl tüketilir? Minimum zaman aralığının trafiği mi, yoksa tüm zaman çerçevelerinin trafiği mi tüketiliyor?
Tekrar merhaba!!!!!!!
/göze batmadan/;-)) size 64. sayfada Mashka'nın alım satım koşullarıyla ilgili sorumu hatırlatmak isterim... Şimdiden teşekkürler (çaydanlığa tokat için)
Cevap için teşekkürler!!!
1. Açıklığa kavuşturayım, double open_0 ve double_1 olan iki satır double MA satırından ÖNCE yazılmalıdır, yoksa kritik değil mi ??????...
2. Ticaret koşullarında, open[0,1] yerine open_0,1 ?????????.....
Cevap için teşekkürler!!!
1. Açıklığa kavuşturayım, double open_0 ve double_1 olan iki satır double MA satırından ÖNCE yazılmalıdır, yoksa kritik değil mi ??????...
2. Ticaret koşullarında, open[0,1] yerine open_0,1 ?????????.....
1. kritik değil
2. can
Lütfen yardım edin... belki tembelim, tabii ki, ama bir demo veya gerçek hesap üzerinde işlem yapmak için programı nasıl bağlayacağımı çözemiyorum... lütfen nereye yazacağımı, nerede şarkı söyleyeceğimi açıklayın, ben rica ederim...şimdiden teşekkürler!))
1. kritik değil
2. can
CGFCB<J yani TEŞEKKÜR EDERİZ!!!!