Trade101 indicatore multi-valuta - pagina 4

 
Qualcuno sa come ridurre gli elementi a un denominatore comune e fare come descritto dall'autore? Sento che devo scavare in MarketInfo, ma non so quale parametro.
 
Hmm, sto ancora ottenendo zero divide. È un po' un mistero.
 

Zero divide solo quando MarketInfo(Pair[j], MODE_POINT)=0.

Questo non dovrebbe accadere... La storia è caricata su tutte le coppie? Prova ad aprire tutte le 14 coppie nel terminale.

 
Forse perché il mio CHFJPY è solo grigio. (Il commercio su di esso è vietato) Ma le citazioni vanno. Forse l'indicatore non può estrarre la markitonfo da lì? Anche se un altro indicatore funziona bene con questo simbolo.
 
Se potete, scrivete lo script che marketinfo per stampare per tutte le valute. Questo dovrebbe chiarirlo...
 
Sfortunatamente, non sono molto bravo a programmare. :(
 

Mi chiedo perché, se si lasciano solo 2 coppie, ad esempio Pair[0]="EURUSD"; Pair[1]="GBPJPY";

non funziona, non funziona.

Chi sa, non dice; chi dice, non sa. La regola empirica di un agente di cambio
 
sergeev писал(а) >>

Lo chiederò di nuovo. Sei sicuro che il blocco:

b=true;
while ( b) // сортируем массив по возрастанию
{
b=false;
for ( j=1; j< Max; j++)
  if ( Price[ j]< Price[ j-1]) 
  { 
   a= Price[ j]; Price[ j]= Price[ j-1]; Price[ j-1]= a;
   n= Num[ j]; Num[ j]= Num[ j-1]; Num[ j-1]= n; b=true; 
  }
}

Ordina correttamente l'array Price[]?

O mi sono perso un altro ciclo da qualche parte? ;)

O ha un altro scopo?

 

Non so se sarebbe d'aiuto. Prima prendo l'intervallo di tempo EURUSD (il più quotato, credo), ad esempio 1 ora. E poi il resto dei simboli sono l'intervallo tramite iBarShift.

Poi per ogni simbolo non calcolo il movimento in punti, ma i punti moltiplicati per il loro prezzo (a 1,0 lotto).

      for(int j=0; j<14; j++)
      {
         int q;
         if(j<7) q=-1; else q=1;
         string sm=smbl[j];
         int ii=iBarShift(sm,PERIOD_M1,timenow);
         int jj=iBarShift(sm,PERIOD_M1,timestart);
         double p;
         if(StringFind(sm,"JPY")>=0) p=0.01; else p=0.0001;
         double sp=MarketInfo(sm,MODE_SPREAD);
         double pp=MarketInfo(Symbol(), MODE_TICKVALUE);
         double mv=((iClose(sm,PERIOD_M1,ii)-iClose(sm,PERIOD_M1,jj))/p*q-sp)*pp;
         smbl_movement[j]=mv;
         if(j<7) sumsell=sumsell+smbl_movement[j];
         else sumbuy=sumbuy+smbl_movement[j];
      }
      GreenBuffer[i]=sumbuy;
      RedBuffer[i]=sumsell;

E prendo due buffer - il profitto totale di sette punti in acquisto e sette punti in vendita (simboli verdi e rossi in T101)

Voglio aggiungere altri buffer - H4 e intervalli giornalieri.

E in generale, signori, non seppellire tutto il mondo - chi è interessato, andare al sito di Victor (vinin) - ci sono state un sacco di chiacchiere e la contrattazione è andato un po ', forse qualcosa sarà aggiunto.

E l'ordinamento, a proposito, ha già funzionato (vedi Comment() )

 
SergNF >> :

Lo chiederò di nuovo. Sei sicuro che il blocco:

Ordina correttamente l'array Price[]?

O mi sono perso un altro ciclo da qualche parte? ;)

Oppure (il blocco) ha un altro scopo?

Sì, è così.

C'è un errore che non riesco a vedere?

Motivazione: