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
MT4 - Ordersend() ile Hata #130
Merhaba. MT4'te OrderSend() kullanarak bir sipariş oluşturmaya çalışıyorum ancak Hata #130'u almaya devam ediyorum. Hata #130'un, mevcut piyasa fiyatına çok yakın ayarlanmış zararı durdur veya kar al seviyeleri ile ilgili olduğunu anlıyorum. Onları başarılı olmadan değiştirdim. Hem göreli hem de gerçek değerleri kullandım.
1. Bir satın alma için göreli kar al ve zararı durdur değerlerinin kullanılması:
bilet=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-50*Puan,Ask+50*Point,"Uzun Breakout",16384,0,Yeşil);
2.Satın alma için Stoploss ve TakeProfit için Gerçek değerleri kullanma:
bilet=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,StopLoss,TakeProfit,"Uzun Ara",16384,0,Yeşil);
nerede:
double StopLoss = NormalizeDouble(StopLoss, Digits);
double TakeProfit = NormalizeDouble(TakeProfit, Digits);
ve bu değerler harici değerler olarak ayarlanır (örn. harici çift StopLoss=1.5000, harici double=TakeProfit=1.6000)
Brokerim FXCM. StoplLoss ve TakeProfit değerlerini 10 ile çarpmayı denedim. Tüm döviz çiftleri için aynı sonucu alıyorum.
Her durumda Hata #130 alıyorum. Herhangi bir fikir?
Şerefe
Bir satın alma pozisyonu için kar al ayarını yaparken. TP
Ask+'ın aksine...
Chris
Üzgünüm, evet, yazmak benim hatam. Yine de sorun devam ediyor korkarım
Zarar durdurma ve kâr alma seviyelerini yazdırmak için sipariş gönderme işlevinden hemen önce bir yorum yapmayı veya yazdırmayı deneyin. Ayrıca, stoploss/tp'nin minimum mesafeden daha fazla olduğundan emin olun.
Bunu sipariş göndermeden önce yerleştirin:
if(StopLoss!=0 && StopLoss<(MarketInfo(Symbol(),MODE_STOPLEVEL)))
{
StopLoss=MarketInfo(Symbol(),MODE_STOPLEVEL);
}
if(TakeProfit!=0 && TakeProfit<(MarketInfo(Symbol(),MODE_STOPLEVEL)))
{
TakeProfit=MarketInfo(Symbol(),MODE_STOPLEVEL);
}
Chris
Merhaba. MT4'te OrderSend() kullanarak bir sipariş oluşturmaya çalışıyorum ancak Hata #130'u almaya devam ediyorum. Hata #130'un, mevcut piyasa fiyatına çok yakın ayarlanmış zararı durdur veya kar al seviyeleri ile ilgili olduğunu anlıyorum. Onları başarılı olmadan değiştirdim. Hem göreli hem de gerçek değerleri kullandım.
1. Bir satın alma için göreli kar al ve zararı durdur değerlerinin kullanılması:
bilet=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-50*Puan,Ask+50*Point,"Uzun Breakout",16384,0,Yeşil);
2.Satın alma için Stoploss ve TakeProfit için Gerçek değerleri kullanma:
bilet=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,StopLoss,TakeProfit,"Uzun Ara",16384,0,Yeşil);
nerede:
double StopLoss = NormalizeDouble(StopLoss, Digits);
double TakeProfit = NormalizeDouble(TakeProfit, Digits);
ve bu değerler harici değerler olarak ayarlanır (örn. harici çift StopLoss=1.5000, harici double=TakeProfit=1.6000)
Brokerim FXCM. StoplLoss ve TakeProfit değerlerini 10 ile çarpmayı denedim. Tüm döviz çiftleri için aynı sonucu alıyorum.
Her durumda Hata #130 alıyorum. Herhangi bir fikir?
Şerefe5 basamaklı FXCM.. veya hangi ülkeden FXCM kullanıyorsunuz?
Cevaplarınız için teşekkürler. Evet, Stop Loss ve Take Profit değerlerini kontrol etmek için print deyimlerini kullandım. Çıktıda iyi görünüyordu.
İngiltere'de FXCM kullanıyorum. Yen olmayan para birimlerinde ondalık basamaktan sonra 5 basamak bulunur (örn. GBPUSD: 1.55125). Yen çaprazlarının üç hanesi vardır (örneğin GBPJPY: 132.393). Bu durumda değerlerin muhtemelen 10 ile çarpılması gerektiğini düşündüm.
Şerefe
Bu durumda değerlerin muhtemelen 10 ile çarpılması gerektiğini düşündüm. Şerefe
init işlevinde böyle bir şey var mı?
{
Factor = 10;
StopLoss *= 10;
TakeProfit *= 10;
MaxSpread *= 10;
Slippage *=10;
}Hayır, OrderSend() ifadesinde Take Profit ve StopLoss değerlerini 10 ile çarpıyorum. Bu değerlerin kullanımını biraz daha detaylandırabilir misiniz? Çok teşekkürler
Onlar sadece on ile çarpılan dış değişkenlerdir. Bunları değişkenlerinizi içerecek şekilde ayarlarsınız. Ancak yalnızca Stoploss gibi kesirli pip brokerlerinde farklılık gösteren değişkenler yaparsınız.
Bu, giriş listesinde stoploss 20 pip olarak girilirse, broker kesirli ise otomatik olarak 200'e ayarlayacaktır.