[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 652

 
wenay:

Tâche : Vous devez trouver la tique d'un ordre nouvellement apparu pour ce TS particulier sans utiliser de magik .
Vérifier l'heure d'ouverture des commandes et extraire celle qui a été ouverte en dernier par l'heure.
 
sanyooooook:
Vérifiez les heures d'ouverture des commandes et retirez celle qui a été ouverte en dernier.


Voici ce que j'ai pensé : il suffit de comparer tous les paramètres, il y a une société de courtage où le nouvel ordre sera le dernier, il y a celles où le moment de l'ouverture coïncide avec un ordre de fermeture partielle, je vais donc traiter 2 moments.

Je pense que la question est close. Merci.

 
ToLik_SRGV:
Merci beaucoup, je n'ai pas pu trouver un tel article sur le forum, s'il n'y a vraiment pas d'information de ce type, je pense que cela vaudrait la peine de l'ajouter aux modérateurs dans la section correspondante.
 

Comment réaliser l'inscription dans le coin supérieur droit :

if (naklon> naklonmax) printvuglusprv(" tendance à la hausse, pas de court-circuit autorisé)

 
Craft:

Bonnes gens, ayez pitié - je n'arrive pas à obtenir : acheter/vendre après un autre pic de CCI lissé.

J'ai essayé de déclarer le second tampon (il est plus logique pour moi), pas d'erreurs, log - silencieux, print, probablement comme une chèvre - je ne comprends rien.

La pièce jointe contient l'intégralité du conseiller expert. Après avoir testé dans la visualisation, le CCI est dessiné à la fois dans cette version et dans l'ancienne (le fichier joint est tracé), mais le lissé ne l'est pas et donc les trades ne sont pas ouverts.

Ancienne variante :

Je comprends le temps que personne n'a le problème des autres à régler, dites-moi au moins où insérer exactement Print et où chercher le retour d'information dans le journal ou les journaux et ce à quoi vous devez faire attention.

Vous devez d'abord insérer Print() ici :

double c1s[];
   ArrayResize(c1s,PeriodS);
   double c1s_1[];
   ArrayResize(c1s_1,AvgS);
   for(i=1;i<=PeriodS;i++)
   {
   c1s[i]=iCCI(NULL,0,PeriodS,PRICE_TYPICAL,i);
   {
   c1s_1[i]=iMAOnArray(c1s,0,AvgS,0,MODE_SMA,i);
   }
   }

Print("NormalizeDouble(c1b_1[i],4) - ",NormalizeDouble(c1b_1[i],4));
Print("NormalizeDouble(c1b_1[i+2],4) - ",NormalizeDouble(c1b_1[i+2],4));
Print("NormalizeDouble(c1b_1[i+3],4) - ",NormalizeDouble(c1b_1[i+3],4));

if (NormalizeDouble(c1b_1[i],4)<NormalizeDouble(c1b_1[i+2],4)&&NormalizeDouble(c1b_1[i+2],4)>NormalizeDouble(c1b_1[i+3],4))
     {                                          // 
      Opn_B=true;                               // Критерий откр. Buy
      Cls_S=true;                               // Критерий закр. Sell
     }
pour s'assurer que le tableau c1b_1[i] est vide, afin de comparer les zéros si, bien sûr, aucune affaire n'est ouverte.

Et des zéros à cet endroit parce que la période de calcul de la moyenne dans la fonction iMAOnArray(c1b,0,AvgB,0,MODE_SMA,i) (extern int AvgB=25;) est plus grande que le tableau c1b lui-même , ArrayResize(c1b,PeriodB ) (extern int PeriodB=20 ;), donc elle ne peut pas calculer la moyenne.

 
Rossi:

Comment réaliser l'inscription dans le coin supérieur droit :

if (naklon> naklonmax) printvuglusprv(" tendance à la hausse, pas de court-circuit autorisé)

int init()
  {
   if(!ObjectCreate("control", OBJ_LABEL, 0, 0, 0))Print("error: can't create text_object! code #",GetLastError());
      else{
            ObjectSet("control", OBJPROP_CORNER, 0 );
            ObjectSet("control",OBJPROP_XDISTANCE,30);
            ObjectSet("control",OBJPROP_YDISTANCE,40);
            ObjectSetText("control", "NO BUY", 18, "Times New Roman", Red);
           }
   return(0);
  }

int start()
  {
if ( naklon> naklonmax )  ObjectSetText("control", "тренд вверх, шорт запрещен", 18, "Times New Roman", Blue);


return(0);
}
Les parenthèses ne vérifient pas
 
IgorM:
compter les parenthèses n'a pas vérifié

Deinit devrait nettoyer la fenêtre 0 après pour la balayer... :)
 
IgorM:
le nombre de parenthèses n'a pas été vérifié.


Merci, je me suis trompé, je ne veux pas une impression, je veux une inscription sur l'écran ...

Je pensais que c'était fait en une ligne...

 

Dans l'indicateur Indexes_v8L, j'ai changé de devises

"AUDUSD", "EURUSD", "GBPUSD", "NZDUSD", "USDCAD", "USDCHF", "USDJPY".

à

" EURUSD ", " EURGBP ", " EURJPY ", " EURAUD ", " EURCAD ", " EURNZD ".

La ligne GBP a disparu.

Où creuser ?

Dossiers :
 
Rossi:


Merci, je me suis trompé, je ne veux pas une impression, je veux une légende d'écran ...

Je pensais que c'était une ligne...

On vous a dit comment faire le lettrage à l'écran :

if ( naklon> naklonmax )  ObjectSetText("control", "тренд вверх, шорт запрещен", 18, "Times New Roman", Blue);

18 - taille de la police, Times New Roman - nom de la police, Bleu - couleur de votre inscription... Écrivez plutôt vos propres valeurs...

Toutes les autres lignes sont des préparations d'objets graphiques pour les afficher à l'écran. Vous ne pouvez rien faire sans elle.

ObjectSet("control", OBJPROP_CORNER, 1 );  // Устанавливает в каком углу окна будет выводиться надпись 0 = лево-верх, 1 = право-верх, 2 и 3 низ
ObjectSet("control",OBJPROP_XDISTANCE,30); // Устанавливает координату X будущей надписи
ObjectSet("control",OBJPROP_YDISTANCE,40); // Устанавливает координату Y будущей надписи
ObjectSetText("control", "NO BUY", 18, "Times New Roman", Red); // Эту строку в init() можете не писать, тогда не будет сразу надписи NO BUY
                                                                // Далее, уже по ходу основной программы в ф-ции start() проверяете условия и
                                                                // при их выполнении выводите строку в уже заранее заданные координаты:
if ( naklon> naklonmax )  ObjectSetText("control", "тренд вверх, шорт запрещен", 18, "Times New Roman", Blue);
 

Ou écrivez "Commentaire" dans le coin supérieur gauche. Il faut moins y penser...

Raison: