[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 537

 
chief2000 :

Bir soru vardı -
Özel Göstergenin kodundan çalıştığı pencerenin aktif olup olmadığını öğrenmek mümkün müdür?
Örneğin, aynı Gösterge iki pencerede çalışır - sadece grafiği aktif ve ikinci pencerede aktif olmayan pencerede çalışması gerekir.

Teşekkür ederim!

Ve yine kütüphane yardımcı olur :-)
 
Zhunko :
Ve yine kütüphane yardımcı olur :-)
Teşekkür ederim!
 
İyi akşamlar! Hızlıca robotu buraya fırlatmaya başladım ve hatta aniden hatasız kampanya yaptım ve şimdi birdenbire iki siparişi birden açıyor !!! Yani, sırayla, birinci ve ikinci kenelerde. İşte kod, aşağıya yapıştıracağım. Açıklığa kavuşturmak için, ilk olarak lot sayılır ve ninada'yı izleyin ve ikincisinde - ikincisinde, sipariş açılır, ayrıca AL değişkeni zaten açık olan satın alma siparişlerinin sayısıdır. sıfırdan büyük, en az bir sipariş var, o zaman açılmamalıdır.
 //+------------------------------------------------------------------+
//|                                                        антиб.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"

extern double volume= 0.01 ; extern double stoploss= 12 ,takeprofit= 12 ; extern int magic= 50001 ,I= 5 ;
int ticket; double volumee ; 
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   volumee=volume;
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
        
int start()
  {   int BUY;
  
//----

 for ( int i= OrdersHistoryTotal () - 1 ;i>= 0 ;i--){
     OrderSelect (i,SELECT_BY_POS,MODE_HISTORY); if ( OrderMagicNumber ( )== magic) { if ( OrderSymbol ()== Symbol ()) {
       if ( OrderType ()==OP_BUY ) {   if (( OrderProfit ( )- 3 * Point ) <   OrderTakeProfit ( ) && ( OrderProfit ( )+ 3 * Point ) >   OrderTakeProfit ( ) ) { if ( OrderTicket ( ) == ticket ) {
               volumee = volumee+volumee;}}}}}}
if (volumee>volume*I){volumee=volume;}


               for ( i= OrdersTotal ()- 1 ;i>= 0 ;i--)
   {
     if ( OrderSelect (i, SELECT_BY_TICKET ) == true)     Alert ( "Select error " , GetLastError ( ) ) ;
     if ( OrderMagicNumber ( )== magic){
       if ( OrderSymbol ()== Symbol ()) {
       if ( OrderType ()==OP_BUY ) {
                             BUY++;}}}}   
 if (BUY== 0 ){

 ticket= OrderSend ( Symbol (), OP_BUY, volumee, NormalizeDouble (( Ask), Digits ), NormalizeDouble (( Point * 3 ), Digits ) , NormalizeDouble (( Ask-stoploss* Point ), Digits ), NormalizeDouble (( Ask+takeprofit* Point ), Digits ), NULL ,  magic, 0 , Red ) ;}
 
 
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
 
İşte iki sipariş! !
 

Ve biliyorsunuz, handikap döngüsüyle pirimudrill yapıyor olabilirim, bir sipariş var, eksi bir tane daha var ve döngü koşulu hiç yerine getirilmedi. Evet, evet, öyle görünüyor ve açılması gereken sadece iki emir var!

Arkadaşlar son yorumlarımı silmeli miyim?

Hayır, hala iki ve üçüncü veya dördüncü onay işaretinden sonra bile Uyarı: 4105 hatasını seçin,

sıralama seçilmemiş gibi görünüyor ama ilk başta hata yok.. Aynen öyle, yani for( int i=0;

ve böylece for( int i=0;i<=OrdersTotal();i++){

Ve iki sipariş var, hepsi aynı.

Hepsi bir. Vay..;

 
Hata 4105 - sipariş seçilmedi - çıkmıyor, ancak genellikle yeterince çalışıyor
 
Ivn :

iyi günler, başka bir zaman diliminde standart bir danışman nasıl yazılır. ONLAR. bu göstergeyi 4 saatlik göstergeyi gösterecek olan 1 saatlik çizelgeye asın.

denendi //+------------------------------------------------- --------------------+
//| saat 4'te cc.mq4 |
//| Telif Hakkı © 2012, MetaQuotes Yazılım A.Ş. |
//| https://www.metaquotes.net/ |
//+------------------------------------------- --------------------+
#property telif hakkı "Telif hakkı © 2012, MetaQuotes Software Corp."
#özellik bağlantısı " https://www.metaquotes.net/ "

#özellik göstergesi_chart_window
#özellik göstergesi_tamponları 3
#özellik göstergesi_color1 LightSeaGreen
#özellik göstergesi_renk2 AçıkDenizYeşil
#özellik göstergesi_renk3 LightSeaYeşil
//---- gösterge parametreleri
extern int BandsPeriod=20;
harici int BandsShift=0;
harici çift BantSapmalar=2.0;
//---- arabellekler
double MovingBuffer[];
çift UpperBuffer[];
doubleLowerBuffer[];
//+------------------------------------------- --------------------+
//| özel gösterge başlatma işlevi |
//+------------------------------------------- --------------------+
int init()
{
//---- göstergeler
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,MovingBuffer);
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,UpperBuffer);
SetIndexStyle(2,DRAW_LINE);
SetIndexBuffer(2,AltBuffer);
//----
SetIndexDrawBegin(0,BandsPeriod+BandsShift);
SetIndexDrawBegin(1,BandsPeriod+BandsShift);
SetIndexDrawBegin(2,BandsPeriod+BandsShift);
//----
dönüş(0);
}
//+------------------------------------------- --------------------+
//| Bollinger Bantları |
//+------------------------------------------- --------------------+
int başlangıç()
{
int i,k,counted_bars=IndicatorCounted();
çift sapma;
çift toplam,eskival,newres;
int B=iBars(NULL,PERIOD_H4);
double C=iClose(NULL,PERIOD_H4,0);
//----
if(B<=BandsPeriod) return(0);
//---- ilk sıfır
if(sayılan_barlar<1)
for(i=1;i<=BandsPeriod;i++)
{
MovingBuffer[Bi]=BOŞ_DEĞER;
UpperBuffer[Bi]=BOŞ_DEĞER;
AltTampon[Bi]=BOŞ_DEĞER;
}
//----
int limit=B-sayılan_barlar;
if(counted_bars>0) limit++;
for(i=0; i<limit; i++)
MovingBuffer[i]=iMA(NULL,PERIOD_H4,BandsPeriod,BandsShift,MODE_SMA,PRICE_CLOSE,i);
//----
i=B-BandsPeriod+1;
if(counted_bars>BandsPeriod-1) i=B-counted_bars-1;
while(i>=0)
{
toplam=0.0;
k=i+BandsPeriod-1;
oldval=MovingBuffer[i];
süre(k>=i)
{
newres=C[k]-oldval;
toplam+=haber*haber;
k--;
}
sapma=BantlarSapmalar*MathSqrt(toplam/BandsPeriod);
UpperBuffer[i]=eskideğer+sapma;
LowerBuffer[i]=eskideğer-sapma;
ben--;
}
//----
dönüş(0);
}
//+------------------------------------------- --------------------+

işe yaramadı

bu satır newres=C[k]-oldval;- '[' - beklenmeyen belirteç

ve Bollinger Bantları göstergesi.


C[k]'yi iClose(NULL,PERIOD_H4,k); ile değiştirin

Ancak, 1 saatlik grafiğin ve 4 saatlik çizgilerin daha tanıdık bir şekilde görüntülenmesinin nasıl sağlanacağı ortaya çıktı.
fiyat Bollinger Band kanalında hareket ediyor, bu kodu bir grafiğe çevirirseniz fiyatın kanaldan nasıl çıktığını görebilirsiniz, saat 4 konumundaki Bollinger Band grafiği zaman çizgisine bağlı değil gibi görünüyor

şimdiden teşekkürler

 

Beyler, deneyimlerimden bahsedin... MT4 müşteri terminali üzerinden ticaret yapmak için bir VPS kiralamak için bir ofis seçtim, ortalama olarak, çalışan bir terminalin, örneğin on baykuşla ne kadar trafik tükettiğiyle ilgileniyorum? Birkaç terminal çalışacak... Sunulanlardan uygun tarife planını seçebilmem için:

not Düzenleri toplam trafiğe göre gidiyor, yani. gelen + giden.

 

Cevabı bilen arkadaşlar:

Aynı zaman diliminde (05/01/2011 - 01/27/2012), EURUSD döviz çiftinde, saatlik çubuklarda (H1), bir DC'den (Alpari) ve aynı Expert Advisor'da bir strateji test cihazım var, ancak farklı bilgisayarlarda (dizüstü bilgisayar, sabit) zıt sonuçlar üretir! PC'de -2000 dolar, dizüstü bilgisayarda +3000 dolar Hem orada hem de orada 2-3 kez kontrol ettim.

Lütfen bana nedenini ve ne yapacağımı söyleyin ve / veya konuyla ilgili bir şeyler okuyabileceğiniz bir bağlantı verin.
 
Sersad :

Cevabı bilen arkadaşlar:

Aynı zaman diliminde (05/01/2011 - 01/27/2012), EURUSD döviz çiftinde, saatlik çubuklarda (H1), bir DC'den (Alpari) ve aynı Expert Advisor'da bir strateji test cihazım var, ancak farklı bilgisayarlarda (dizüstü bilgisayar, sabit) zıt sonuçlar üretir! PC'de -2000 dolar, dizüstü bilgisayarda +3000 dolar Hem orada hem de orada 2-3 kez kontrol ettim.

Lütfen bana nedenini ve ne yapacağımı söyleyin ve / veya konuyla ilgili bir şeyler okuyabileceğiniz bir bağlantı verin.


kendim bir şekilde buna yakalandım ... şöyleydi: 1. terminal Metaquotes'tan, 2. terminal ise Alparey'den kuruldu, hikaye de sırasıyla, aynı baykuşu test ederken önemli tutarsızlıklar vardı, uzun süre ne durumda anlayamadım.

1. Terminalleri Alpari'den indirin. Enstrüman için Alparish alıntı geçmişini yükleyin, aşağıdaki pencereyi göreceksiniz:

F2'ye ve ardından cl'ye bastıktan sonra açılmazsa. "İndir", Alpari'den değil alıntıların geçmişini indirdiğiniz anlamına gelir.

2. Terminal test cihazında, tüm seçenekleri aynı ayarlayın + cl'ye tıklayarak yayılma boyutunu kontrol edin. Strateji test cihazında "Sembol özellikleri".

Bundan önce - ilgilendiğiniz enstrümanın alıntı geçmişini silin ve yeniden yükleyin + Test süresini kontrol edin: H4 ekranında - orada ve orada aynı olsun.