KimIV'ten faydalı özellikler - sayfa 83

 
Ve i-Sessions'a 23'ten 01'e kadar başka bir gece seansı ekleyebilirsiniz, yani. Kendim ekleyebilirim ama 00. saat nasıl geçer? Bana yardım et lütfen!!!
 
e-TFL_v2 Expert Advisor'ın yeniden yapılmasına yardımcı olun!

Danışmanın bir pozisyonu değil, hemen bir yönde 2 veya 3 açmasını nasıl sağlarsınız. Onlar. yani örneğin 1 lot değil de 0,5 ve 0,5 lotluk iki tek yönlü pozisyon açsın mı? Veya 0.3+0.3+0.3 lot.
 
Bana terminali nasıl kuracağımı söyle, böylece onu Rusça'ya çevirdiğinde her şey Rusça yazılır, aksi takdirde her şey bir tür hiyeroglif ile yazılır.
 
arvis >> :
Bana terminali nasıl kuracağımı söyle, böylece onu Rusça'ya çevirdiğinde her şey Rusça yazılır, aksi takdirde her şey bir tür hiyeroglif ile yazılır.

Windows'un bölgesel ayarlarında, Unicode kullanmayan uygulamalarda kullanmak için dili Rusça olarak ayarlayın.

 

Herkese merhaba! i-SignalOfTrade göstergesinin (yanılmıyorsam) yazarı olduğu için, muhtemelen doğrudan Igor Kim'e bir sorum var.

Gösterge tüm işlevlerini mükemmel bir şekilde yerine getirir, ancak bir e-posta gönderirken, günlükte aşağıdaki girişler görünür

Posta: 'i-SignalOfTrade' başarısız oldu

Posta: 451 Bkz. http://pobox.com/~djb/docs/smtplf.html.

Tabii ki, mesaj hiçbir yere gitmiyor.

Sorunun ne olabileceğini ve nasıl düzeltileceğini söyleyebilir misiniz?

PS Posta istemcisi doğru bir şekilde yapılandırılmıştır, test mesajları sorunsuz bir şekilde gönderilir ve teslim edilir.

 

Tünaydın. Bana kimin bildiğini söyle. RTS indeksi ile çalışıyorum. Konum boyutu, üçüncü taraf bir program tarafından hesaplanır ve bir .txt dosyası aracılığıyla Expert Advisor'a aktarılır. Ve burada 2 problemim var:

1. çünkü start {...} bloğu yalnızca yeni bir onay işaretinin gelmesiyle başlatılır ve dizindeki işaretler nadirdir, ardından Expert Advisor'ın yürütülmesinde bir gecikme olur.

Expert Advisor'ı daha sık çalışan bir enstrümana (EURUSD) astım ama yine de soruyorum - {...} başlatmaya zorlamak mümkün mü?

2. Broker tarafından izin verilen maksimum pozisyon büyüklüğü 20 lottur. 100 lotluk bir pozisyon açmam gerekiyor. Şimdi sırayla açıyorum,

ancak uzun bir zaman alır, yaklaşık 4 saniye. sipariş başına. (yani bir pozisyonun açılması 20 saniye sürer) ve bazen bu kötüdür. Daha hızlı hale getirmenin bir yolu var mı? (önceden ayarlanmış durdurma emirleri aracılığıyla - bana uymuyor).

 
ADI1966 >> :

2. Broker tarafından izin verilen maksimum pozisyon büyüklüğü 20 lottur. 100 lotluk bir pozisyon açmam gerekiyor. Şimdi sırayla açıyorum,

ancak uzun bir zaman alır, yaklaşık 4 saniye. sipariş başına. (yani bir pozisyonun açılması 20 saniye sürer) ve bazen bu kötüdür. Daha hızlı hale getirmenin bir yolu var mı? (önceden ayarlanmış durdurma emirleri aracılığıyla - bana uymuyor).

https://forum.mql4.com/ru/13567
 
kombat писал(а) >>
https://forum.mql4.com/ru/13567

okuman.

Danışmanın tek bir tıklamayla ticaret sistemine aynı anda birkaç satın alma emri göndereceğini doğru anladım,

ve sunucunun ilk siparişi, ardından ikincisini vb. kabul etme ve yürütme konusundaki yanıtını beklemez. ??

şimdiye kadar böyle gidiyor - örnek - (günlük girişleri, gerçek hesap, gerçek zamanlı)

10.55.13 - 20 RTS piyasa satın al - bunlar ilk 20 lottur

10.55.13 - istek sunucu tarafından kabul edildi

10.55.13 - işlemde istek

10.55.17 - sipariş açıldı

10.55.18 - 20 RTS piyasa satın al - bu ikinci 20 lottur

10.55.18 - istek sunucu tarafından kabul edildi

10.55.19 - işlemde istek

10.55.22 - sipariş açıldı

10.55.23 - piyasa satın al 20 RTS - bu üçüncü 20 lottur

10.55.23 - istek sunucu tarafından kabul edildi

10.55.24 - işlemde istek

10.55.27 - sipariş açıldı

ama tüm pozisyonun ilk 4 saniyede açılmasını istiyorum, yani. 10.55.17'ye kadar

 
ADI1966 писал(а) >>

2. Broker tarafından izin verilen maksimum pozisyon büyüklüğü 20 lottur. 100 lotluk bir pozisyon açmam gerekiyor. Şimdi sırayla açıyorum,

ancak uzun bir zaman alır, yaklaşık 4 saniye. sipariş başına. (yani bir pozisyonun açılması 20 saniye sürer) ve bazen bu kötüdür. Daha hızlı hale getirmenin bir yolu var mı? (önceden ayarlanmış durdurma emirleri aracılığıyla - bana uymuyor).

4 terminal çalıştırın, 4 istek hemen işlenmek üzere bayiye gidecek ve tek tek değil.

 

Igor, merhaba!

Lütfen bana mevcut bir göstergeye sesli bir bildirimin nasıl uygulanacağını söyleyin.

Örneğin ZigZag'da. Film müziğinin yeni bir çizgi çizme anında olması için nereye ve nasıl yazılabilir:

//+------------------------------------------- --------------------+
//| Zigzag.mq4 |
//| Telif Hakkı © 2005-2007, MetaQuotes Software Corp. |
//| https://www.metaquotes.net// |
//+------------------------------------------- --------------------+
#property telif hakkı "Telif hakkı © 2007, MetaQuotes Software Corp."
#özellik bağlantısı " https://www.metaquotes.net// "

#özellik göstergesi_chart_window
#özellik göstergesi_tamponları 1
#özellik göstergesi_renk1 Kırmızı
//---- gösterge parametreleri
dış int DışDepth=12;
harici int ExtDeviation=5;
harici int ExtBackstep=3;
//---- gösterge arabellekleri
çift ZigzagBuffer[];
çift HighMapBuffer[];
çift LowMapBuffer[];
iç düzey=3; // saymanın derinliği
bool indirme tarihi=yanlış;
//+------------------------------------------- --------------------+
//| özel gösterge başlatma işlevi |
//+------------------------------------------- --------------------+
int init()
{
Gösterge Tamponları(3);
//---- çizim ayarları
SetIndexStyle(0,DRAW_SECTION);
//---- gösterge arabellek eşlemesi
SetIndexBuffer(0,ZigzagBuffer);
SetIndexBuffer(1,HighMapBuffer);
SetIndexBuffer(2,LowMapBuffer);
SetIndexEmptyValue(0,0.0);

//---- gösterge kısa adı
IndicatorShortName("ZigZag("+ExtDepth+","+ExtDeviation+","+ExtBackstep+")");
//---- başlatma tamamlandı
dönüş(0);
}
//+------------------------------------------- --------------------+
//| |
//+------------------------------------------- --------------------+
int başlangıç()
{
int i, counted_bars = IndicatorCounted();
int limit,counterZ,whatlookfor;
int shift,geri,lasthighpos,lastlowpos;
çift değer, res;
çift kıvrım, kıvrım, son, son;

if (counted_bars==0 && downloadhistory) // geçmiş indirildi
{
ArrayInitialize(ZigzagBuffer,0.0);
ArrayInitialize(HighMapBuffer,0.0);
ArrayInitialize(LowMapBuffer,0.0);
}
if (counted_bars==0)
{
limit=Barlar-ExtDepth;
indirme geçmişi=true;
}
if (counted_bars>0)
{
while (counterZ<level && i<100)
{
res=ZigzagBuffer[i];
if (res!=0) counterZ++;
ben++;
}
ben--;
limit=i;
if (LowMapBuffer[i]!=0)
{
curlow=LowMapBuffer[i];
ne için = 1;
}
başka
{
curhigh=HighMapBuffer[i];
whatlookfor=-1;
}
(i=limit-1;i>=0;i--) için
{
ZigzagBuffer[i]=0.0;
LowMapBuffer[i]=0.0;
HighMapBuffer[i]=0.0;
}
}

for(shift=limit; shift>=0; shift--)
{
val=Düşük[iDüşük(NULL,0,MODE_LOW,ExtDepth,shift)];
if(val==lastlow) val=0.0;
başka
{
lastlow=val;
if((Low[shift]-val)>(ExtDeviation*Point)) val=0.0;
başka
{
for(geri=1; geri<=ExtBackstep; geri++)
{
res=LowMapBuffer[shift+back];
if((res!=0)&&(res>val)) LowMapBuffer[shift+back]=0.0;
}
}
}
if (Low[shift]==val) LowMapBuffer[shift]=val; başka LowMapBuffer[shift]=0.0;
//--- yüksek
val=Yüksek[iYüksek(NULL,0,MODE_HIGH,ExtDepth,shift)];
if(val==sonyüksek) val=0.0;
başka
{
sonyüksek=val;
if((val-High[shift])>(ExtSapma*Nokta)) val=0.0;
başka
{
for(geri=1; geri<=ExtBackstep; geri++)
{
res=HighMapBuffer[shift+back];
if((res!=0)&&(res<val)) HighMapBuffer[shift+back]=0.0;
}
}
}
if (Yüksek[shift]==val) HighMapBuffer[shift]=val; başka HighMapBuffer[shift]=0.0;
}

// son kesim
if (whatlookfor==0)
{
sondüşük=0;
sonyüksek=0;
}
başka
{
lastlow=curlow;
lasthigh=curhigh;
}
for (shift=limit;shift>=0;shift--)
{
res=0.0;
anahtar
{
durum 0: // tepe veya çimenlik arayın
if (sondüşük==0 && sonyüksek==0)
{
if (HighMapBuffer[shift]!=0)
{
lasthigh=high[shift];
lasthighpos=shift;
whatlookfor=-1;
ZigzagBuffer[shift]=lasthigh;
res=1;
}
if (LowMapBuffer[shift]!=0)
{
lastlow=düşük[shift];
lastlowpos=shift;
ne için = 1;
ZigzagBuffer[shift]=sonlow;
res=1;
}
}
kırmak;
durum 1: // zirveyi ara
if (LowMapBuffer[shift]!=0.0 && LowMapBuffer[shift]<lastlow && HighMapBuffer[shift]==0.0)
{
ZigzagBuffer[sonlowpos]=0.0;
lastlowpos=shift;
lastlow=LowMapBuffer[shift];
ZigzagBuffer[shift]=sonlow;
res=1;
}
if (HighMapBuffer[shift]!=0.0 && LowMapBuffer[shift]==0.0)
{
lasthigh=HighMapBuffer[shift];
lasthighpos=shift;
ZigzagBuffer[shift]=lasthigh;
whatlookfor=-1;
res=1;
}
kırmak;
durum -1: // çim arayın
if (HighMapBuffer[shift]!=0.0 && HighMapBuffer[shift]>lasthigh && LowMapBuffer[shift]==0.0)
{
ZigzagBuffer[lasthighpos]=0.0;
lasthighpos=shift;
lasthigh=HighMapBuffer[shift];
ZigzagBuffer[shift]=lasthigh;
}
if (LowMapBuffer[shift]!=0.0 && HighMapBuffer[shift]==0.0)
{
lastlow=LowMapBuffer[shift];
lastlowpos=shift;
ZigzagBuffer[shift]=sonlow;
ne için = 1;
}
kırmak;
varsayılan: dönüş;
}
}

dönüş(0);
}
//+------------------------------------------- --------------------+

Neden: