[Arşivle!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 2. - sayfa 81
![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
extern bool SATIN AL = doğru;
harici int Sihir = 0;
harici çift Parti = 0.1;
harici int kar al = 0;
harici int stoploss = 0;
dış int kayma = 3;
çift SL,TP;
int(){
dönüş(0);
}
int başlangıç()
{
eğer (SATIN AL)
{
if (kar al!=0) TP = NormalizeDouble (Sor + kar al*Puan,Rakamlar); başkaTP=0;
if (stoploss!=0) SL = NormalizeDouble(Sor - stoploss*Nokta,Rakamlar); başkaSL=0;
OPENORDER("satın al");
AL=yanlış;
}
dönüş(0);
}
void OPENORDER(dize sırası)
{
dehşet içinde;
süre (doğru)
{ hata=doğru;
if (ord=="Buy") error=OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,"",Magic,0){SATIN AL = yanlış;}
}
dönüş;
}
Lütfen bir örnek verin. Daha yeni öğreniyorum ve henüz bayrağı koyma göreviyle karşılaşmadım. )
Lütfen bana EA'da bir koşulun yalnızca tek bir uygulamasına (örneğin, bir sipariş açma) nasıl izin vereceğimi ve bunu her onay işaretiyle tekrar etmemeye nasıl izin vereceğimi söyleyin. Aynı zamanda, bir pozisyonu kapatırken danışman yeni bir pozisyon açmamalıdır. Canlandırmaya çalıştım ama amaçlanan çıkmadı.
Şimdiden teşekkür ederim.hata siparişi biletinin saklanacağı değişkeni neden adlandırdınız?
if (ord=="Buy") error=OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,"",Magic,0){SATIN AL = yanlış;}
OrderSend () hakkında okuyun, sanırım sorular kendiliğinden kaldırılacak, şöyle bir şey yazacaktım:
Belki biraz daha erken okudunuz, sorunumu dile getirdim. Bir çözüm bulmuşlar gibi görünüyor, ancak kitapta mql'de bir dize ile nasıl çalışılacağını bulamıyorum (
bir dizeden tek tek sayılar nasıl çıkarılır?
Belki biraz daha erken okudunuz, sorunumu dile getirdim. Bir çözüm bulmuşlar gibi görünüyor, ancak kitapta mql'de bir dize ile nasıl çalışılacağını bulamıyorum (
bir dizeden tek tek sayılar nasıl çıkarılır?
MQL4 dize işlevleriyle deney yapacak bir komut dosyası oluşturun - buraya bakın https://docs.mql4.com/ru/strings
SIFIR
örneğin hangi kurallara göre?
MQL4 dize işlevleriyle deney yapacak bir komut dosyası oluşturun - buraya bakın https://docs.mql4.com/en/strings/StringSubstr
teşekkür etmek!
Belki biraz daha erken okudunuz, sorunumu dile getirdim. Bir çözüm bulmuşlar gibi görünüyor, ancak kitapta mql'de bir dize ile nasıl çalışılacağını bulamıyorum (
bir dizeden tek tek sayılar nasıl çıkarılır?
sayıyı bir dizgeye dönüştürmeniz gerekiyor https://docs.mql4.com/ru/convert/DoubleToStr
https://docs.mql4.com/en/strings/StringLen dizesinin bir kısmını https://docs.mql4.com/en/strings/StringSubstr başından kesmeniz gerekir
ve her şeyi gerçek türe geri dönüştürün https://docs.mql4.com/en/convert/StrToDouble
dizelerle çalışmak için gerekli tüm işlevler bu, belki StrToDouble () sizin için yeterlidir
ancak bu "çirkin şekilde" kesinlikle keseceksiniz ve sayıyı yuvarlamayacaksınız, başka bir seçenek daha var: gerçek sayıyı 10'un x kuvvetiyle çarpın ve sonucu int türüne atayın - değilsem yanlış, o zaman yuvarlama da olmayacak, sonra int'yi x derecesinde 10'a bölün
sayıyı bir dizgeye dönüştürmeniz gerekiyor https://docs.mql4.com/ru/convert/DoubleToStr
https://docs.mql4.com/en/strings/StringLen dizesinin bir kısmını https://docs.mql4.com/en/strings/StringSubstr başından kesmeniz gerekir
ve her şeyi gerçek türe geri dönüştürün https://docs.mql4.com/en/convert/StrToDouble
dizelerle çalışmak için gerekli tüm işlevler bu, belki StrToDouble () sizin için yeterlidir
ancak böyle "çirkin bir şekilde" kesinlikle keseceksiniz ve sayıyı yuvarlamayacaksınız, başka bir seçenek daha var: gerçek sayıyı 10'un kuvvetiyle çarpın ve sonucu int türüne atayın - eğer ben yanlış değil, o zaman yuvarlama da olmayacak, sonra int'yi x derece olarak 10'a bölün
En azından *kesmeliyim*, çünkü sayının göstergeden sadece bir çizgiye çekildiği ortaya çıkıyor .. tavsiye için teşekkürler, deneyeceğim)
IgorM :
İsimsiz: