[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 533

 
inttehn писал(а) >>
Ragazzi, per favore aiutatemi.
È vero che il tasso di cambio dipende interamente dal volume delle offerte ricevute.
Semplicemente, se questo è vero, allora conoscendo il rapporto dei volumi e conoscendo la loro somma (volume totale delle offerte) si può ignorare il prezzo, perché può essere rappresentato senza ambiguità come una funzione uguale al rapporto delle funzioni dei volumi corrispondenti per l'acquisto di una e dell'altra valuta.


Questo è il peggior segreto borghese di tutti.

 

Signori programmatori, per favore, aiutatemi a far funzionare l'EA solo in determinati

Per esempio: dalle 9-00 alle 13-30 e dalle 17-00 alle 22-30.

Il problema è che conosco MQL4 molto alla lontana e molto superficialmente.

Se avete un Expert Advisor, esso genera segnali per aprire e piazzare ordini secondo il proprio algoritmo durante una giornata.

Ma dobbiamo formarlo ed eseguire questi segnali solo in un certo momento, per esempio in una settimana.

La linea di fondo vi mostra il principio, di cosa sto parlando:)

extern int H = 1; //ora

extern int H = 1; //minuto.

extern double Lots = 0.1; //lot.

extern int SL = 15; //stop

extern int TP = 100; //prendere

int arparp

int aprvp

int aprvar

//quali variabili impostare?


int start()

{

se ( cosa dovrei aggiungere qui, il codice principale sarà eseguito solo durante i periodi diurni dalle 9-00 a

13-30 e 17-00-22-30? )

ritorno(0);


if (condizione che ha causato l'esecuzione delle azioni da parte dell'EA)

{

Corpo EA

}

ritorno(0);

}

Grazie!

 
inttehn >>:
Ребят, помогите пожалуйста.
Верно ли, что курс валюты полностью зависит от объёма поступивших заявок. Т.е. если P1 - условная цена одной валюты, а P2- условная цена второй, то P1*V1=P2*V2, где V1 и V2- объёмы поступивших заявок на покупку первой и второй валюты соответственно. Курс в этом случае будет равен P1/P1(курс)=V2/V1. Просто если это так, то зная отношения объёмов и зная их сумму (общий объём заявок) можно не принимать во внимание цену, т.к. её можно однозначно представить как функцию равную отношению соответствующих функций объёмов на покупку одной и второй валюты. Эти объёмы предсказываются гораздо легче, чем цена, т.к. характеризуются только экономическими потребностями определённых субъектов. Вообще это должно быть верно по теории (основываясь на платёжный баланс стран и международную торговлю), но так ли это на самом деле? Может кто-нибудь над этим задумывался?

Tutto è vero, ma devi solo tenere a mente che una quotazione non è esattamente quello che hai chiamato "prezzo nozionale della valuta" e che deriva dal rapporto che hai menzionato, ma il prezzo dell'ultimo scambio su una data coppia. Per quanto riguarda il più importante segreto borghese - sono d'accordo con il precedente oratore al 100%.

 
bizon3d >>:

Господа, програмисты, помогите пожалуйста заставить советник работать только в установленные

периоды суток к примеру: с 9-00 по 13-30 и с 17-00 по 22-30.


if ((Hour()>=9&&(Hour()<13||Hour()==13&&Minute()<=30))||(Hour()>=17&&(Hour()<22||Hour()==22&&Minute()<=30)))
{
   //TODO
}
 
Ciao a tutti, mi scuso subito per aver scritto forse off-topic, è la mia prima volta qui, ma ecco una domanda. Voglio chiedervi se qualcuno può risolvere il seguente problema. Voglio dire che non ho mai provato a cambiare il colore dell'indicatore. Il colore è OK... Molto fastidioso... Se potete sistemarlo, per favore, dato che non ho nessuna conoscenza di queste cose.... Grazie in anticipo...
File:
macd_line.rar  3 kb
 
E un'altra domanda. Non riesco a trovare un indicatore che consista in un istogramma MACD (come nell'allegato ind_OsMAColored_v1, cioè senza fronzoli extra, solo 4 varianti di colore e larghezza) e indicatore MACD line come nel post precedente (l'ho allegato di nuovo), in modo che le linee nulle coincidano nell'istogramma e nelle linee. Quando si sovrappongono le linee nulle non coincidono. Gli indicatori, che ho trovato, sempre o si aggiunge qualcosa (si segnano i momenti di incrocio con linee verticali, si disegna la divergenza, si aggiunge il sistema di impulsi di Elder, ecc.), o non reagisce sui cambiamenti di parametri o qualcos'altro..... È possibile in qualche modo unire esattamente questi 2 indicatori, dove da impostazioni spessore delle linee e colore come hanno. Forse qualcuno ha un ready-made ... Se sto scrivendo nel posto sbagliato per favore ditemi dove scrivere....Grazie
File:
 

Quindi abbiamo deciso un prezzo e vogliamo comprare...

Euro/dollaro

Prezzo

1.3233

Per comprare in modo ottimale, compriamo così...

comprare (1.3230, slipage 3) giusto?

 


Perché gli indicatori uccidono completamente il terminale
questo è un esempio dell'indicatore #MFT_Trendline.mq4


Numero di barre nella storia 5 000 e sullo schermo 2 000

Anche i Fibo veer uccidono completamente il terminale

File:
 
Salve.
Come posso mostrare il nome e la proprietà dell'oggetto OBJ_HLINE? Per esempio come percentuali sui livelli di Fibonacci.
 
Ciao.
nel codice qui sotto non attiva un'apertura. Se una nuova barra si apre sopra la media mobile, si apre Shell, se si apre sotto, si apre Buy. Chiudere al raggiungimento della media mobile, + stoploss + trailing stop. Aiuto con codice e spiegazione di ciò che ho sbagliato. Grazie in anticipo!!!
#include <b-Lots.mqh>
extern double TrailingStop = 30;
extern double Sploss = 15;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int start() {
   double HA_up,HA_dw;
   double MA_H0,MA_H1,MA_L0,MA_L1,MA_0,MA_1;
   int i, cnt, ticket, total;
   bool flag=true;

   if(Bars<100) {
      Print("bars less than 100");
      return(0); 
   }
// Проверяем стоит ли открываться
   
   cnt=OrdersHistoryTotal()-1;
   for(i=cnt;i>=0;i--) {
      if(!OrderSelect(i, SELECT_BY_POS, MODE_HISTORY )) continue;
      if(OrderOpenTime()>=Time[0]) { // Time[0] - если позиция открывается на нулевом баре текущего символа
         flag=false;
         break;
      }
   }
   cnt=OrdersTotal()-1;
   for(i=cnt;i>=0;i--) {
      if(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
      if(OrderOpenTime()>=Time[0]) { // Time[0] - если позиция открывается на нулевом баре текущего символа
         flag=false;
         break;
      }
   }
   if(!flag) return(0); 
//-----------------------------------------------

   MA_0=iMA(0,0,3,0,MODE_EMA,PRICE_MEDIAN,0);
   MA_1=iMA(0,0,3,0,MODE_EMA,PRICE_MEDIAN,1);


//задали все данные 

   total=OrdersTotal();
   if(total<1) 
     {
      // Проверка свободной маржи
      if(AccountFreeMargin()<(1000*Lots))
        {
         Print("We have no money. Free Margin = ", AccountFreeMargin());
         return(0);  
        }
      // Условие открытие позиции BUY
      if(Open[0]<MA_0)
        {
         Lots=GetSizeLot();
         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,5,Bid-Sploss*Point,0,"",16384,0,Green);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
           }
         else Print("Error opening BUY order : ",GetLastError()); 
         return(0); 
        }
      // Условие открытие позиции SELL
      if(Open[0]>MA_0)
        {
         Lots=GetSizeLot();
         ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,5,Ask+Sploss*Point,0,"",16384,0,Red);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
           }
         else Print("Error opening SELL order : ",GetLastError()); 
         return(0); 
        }
      return(0);
     }
    
   for(cnt=0;cnt<total;cnt++)
     {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      if(OrderType()<=OP_SELL &&   
         OrderSymbol()==Symbol())  
        {
         if(OrderType()==OP_BUY)   // длинная позиция открыта
           {
           if(NormalizeDouble (MathAbs(MA_0-Bid),Digits)<Point)
                {
                 OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); 
                 return(0); 
                }
            // трейлинг-стоп для длинной позиции
            if(TrailingStop>0)  
              {                 
               if(Bid-OrderOpenPrice()>Point*TrailingStop)
                 {
                  if(OrderStopLoss()<Bid-Point*TrailingStop)
                    {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
                     return(0);
                    }
                 }
              }
           }
         else 
           {
           if(NormalizeDouble (MathAbs(MA_0-Ask),Digits)<Point)
              {
               OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); 
               return(0); 
              }
            // трейлинг-стоп для короткой позиции
            if(TrailingStop>0)  
              {                 
               if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
                 {
                  if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                    {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
                     return(0);
                    }
                 }
              }
           }
        }
     }
   return(0);
  }

.