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

 
RekkeR:
Ho diverse linee orizzontali, ho bisogno di definire delle quote tra di esse in diverse combinazioni. Sto cercando uno script o un indicatore che faccia il lavoro. Grazie per il vostro feedback.

Non programmo professionalmente, quindi sarei felice di aiutare, ma...

 
RekkeR

Ci sono diverse linee orizzontali, ho bisogno di determinare le quote tra loro in diverse combinazioni, in linea di principio, in questa fase sono abbastanza soddisfatto della determinazione tra le due linee, il resto lo farò manualmente. Forse c'è uno script già pronto o un simile indicatore? Grazie per il vostro feedback.

Vi darò il codice pronto, se ne avete bisogno. Non c'è niente di complicato.

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
{ 
  
  /*
        Скрипт
  ========== Lines_RASST ========

Является дополнением к скрипту Lines_Create. (Скрипт Lines_Create создаёт на графике 2 горизонтальные линии с именами UP_LEVEL и DOWN_LEVEL)

Скрипт Lines_RASST выводит на экран сообщение о том, сколько пунктов расстояние между двумя горизонтальными линиями
    у которых миена UP_LEVEL и DOWN_LEVEL.
    В силу того, что скрипт Lines_RASST имеет задержку в коде, надо не просто кинуть его на график, или не просто сделать
    по скрипту двойной клик, надо ещё сразу сделать дополнительный одинарный клик левой кнопкой мыши по окну графика.
    Только в этом случае надпись, говорящая о расстоянии появится и через 5 секунд исчезнет сама.
    Если скрипт Lines_RASST вызван, а дополнительный клик по окну не сделан, то по прошествии 5 секунд скрипт выгрузится из оперативной
    памяти, и Вы ни чего на экране не увидите, ни какой надписи (почему так сделан терминал я не знаю).


  */
  
  bool fm;
   // --------------- Значения цены на горизонтальных линиях ---------------------------------
  double UpLevelPrice=ObjectGet("UP_LEVEL",OBJPROP_PRICE1);
  double DownLevelPrice=ObjectGet("DOWN_LEVEL",OBJPROP_PRICE1);
// ---------------------------------------------------------------------------------------- 
 //--------- калькулятор расстояний между этими линиями ---------------
  
  int Rasst=(UpLevelPrice-DownLevelPrice)/Point;
  fm=ObjectCreate("DIAPAZON",OBJ_LABEL,0,0,0);
  if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
  fm=ObjectSetText("DIAPAZON","Канал = "+Rasst+" pt.",24,"Verdana",Blue); 
  if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
  fm=ObjectSet("DIAPAZON",OBJPROP_CORNER,0);
  if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
  fm=ObjectSet("DIAPAZON",OBJPROP_XDISTANCE,350);
  if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
  fm=ObjectSet("DIAPAZON",OBJPROP_YDISTANCE,315);
  if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
  // ------------------------------------------------------------------
  Sleep(5000);
  //-------- удаляем надпись с экрана -----------------------------
 fm=ObjectDelete("DIAPAZON");
 if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
}
 
drknn:

Non è corretto perché la stringa double MyKoren(double MyValue=36){ inizializza la variabile MyValue con il valore = 36. Non ha senso perché passiamo il valore = alla variabile DlyaKornya nella subroutine .


Questo è il default... Se la funzione è chiamata così: double rex=(MyKoren()+1)*100+(MyKoren()+1)*10+MyKoren()+1;

la risposta è chiara?

 
Sorento:

Questo è il default... Se la funzione è chiamata così: double rex=(MyKoren()+1)*100+(MyKoren()+1)*10+MyKoren()+1;

hai capito la risposta?


Lo ripeto:

... Inizializzare una variabile in essa con valore = 36 probabilmente funzionerà solo quando la funzione viene chiamata senza specificare i parametri.

... Comunque, è meglio non usare costruzioni come double MyKoren(double MyValue=36){ ma scrivere double MyKoren(double MyValue){ in modo tale che vi chiederete perché la subroutine non funziona come dovrebbe.

Vi prego di capire che se usate un costrutto come double MyKoren(double MyValue=36){ seguito da una chiamata come la vostra double rex=(MyKoren()+1)... È un gioco da ragazzi perdere il controllo. Soprattutto per un principiante.

 
drknn:


Lo dirò di nuovo:

... Inizializzare una variabile in essa con valore = 36 probabilmente funzionerà solo se la funzione è chiamata senza parametri.

... Comunque, è meglio che non usiate costruzioni di tipo double MyKoren(double MyValue=36){ e le scriviate come dovrebbero - double MyKoren(double MyValue){, altrimenti vi chiederete perché la subroutine non funziona come dovrebbe.

Vi prego di capire che se usate un costrutto come double MyKoren(double MyValue=36){ seguito da una chiamata come la vostra double rex=(MyKoren()+1)... È un gioco da ragazzi perdere il controllo. Soprattutto per un principiante.

)))

Ma ricorderete il numero di pagina.

O la chiave sarà generata.

;)

Questo è un altro thread - mi sono perso. e per favore perdonatemi.

La posta sta girando. (c) AS Pushkin

 
drknn:
Non dovresti postare merce rubata.
Cosa ti fa pensare che io abbia rubato qualcosa? Questo indicatore è liberamente disponibile su internet in formato mql. Che cosa ha a che fare con il non postare indici decompilati? Personalmente non ho decompilato nulla. L'ho trovato, mi è piaciuto e ho chiesto un avviso. Qual è il problema?
 

Buon pomeriggio... Potete dirmi come attivare un EA come quello che Ilan_19 ha postato qui... lavorare su Alpari cinque cifre... l'ho installato e non funziona...

 
Pilligrim:

Buon pomeriggio... Potete dirmi come attivare un EA come quello che Ilan_19 ha postato qui... lavorare su Alpari cinque cifre... l'ho installato e non funziona...

Non lavorare è un termine elastico... Cosa esattamente non funziona, cosa sta succedendo, ecc.
 
artmedia70:
Non lavorare è un termine elastico... Cosa esattamente non funziona, cosa sta succedendo, ecc. ecc.
non è il commercio...
 

Pilligrim:

non commercia...

Né ha bisogno di scambiare.