Erreurs, bugs, questions - page 1717

 

Bonjour !

J'ai un problème étrange.

Je dessine une TrendLine normale entre les points de clôture des deux barres précédentes (sur chaque nouvelle barre).

ObjectsDeleteAll(0," ",-1,-1);
ArrayInitialize(cclose,0);
ArrayInitialize(ttime,0);
CopyTime(Symbol(),0,1,2,ttime);
CopyClose(Symbol(),0,1,2,cclose);
price1=cclose[1];
time1=ttime[1];
price2=cclose[0];
time2=ttime[0];

Print("price1=",price1," time1=",time1," price2=",price2," time2=",time2);

//--- создадим трендовую линию по заданным координатам 
   if(!ObjectCreate(chart_ID,nname,OBJ_TREND,sub_window,time1,price1,time2,price2)) 
     { 
      Print(__FUNCTION__, 
            ": не удалось создать линию тренда! Код ошибки = ",GetLastError()); 
      return; 
     } 

Tout fonctionne bien en temps réel. Mais en mode visualisation dans le testeur, le point gauche de la ligne est attaché à l'origine et ne bouge pas du tout. Quel est le problème ?

Z.U. Dans MT4, ce problème ne semble pas se poser.

 
fxsaber:

Script

Résultat

Est-ce une erreur ? Je m'attendais à voir uchar.

Le type d'opération minimum est int, donc tous les opérandes d'un type plus petit sont implicitement convertis en type int.

Aide https://www.mql5.com/ru/docs/basis/types/casting

Les types de données char, uchar, short et ushort sont inconditionnellement convertis en int dans les opérations.
Документация по MQL5: Основы языка / Типы данных / Приведение типов
Документация по MQL5: Основы языка / Типы данных / Приведение типов
  • www.mql5.com
Основы языка / Типы данных / Приведение типов - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Alexey Kravchenko:

Bonjour !

J'ai un problème étrange.

Je dessine une TrendLine normale entre les points de clôture des deux barres précédentes (sur chaque nouvelle barre).

Tout fonctionne bien en temps réel. Mais en mode visualisation dans le testeur, le point gauche de la ligne est attaché au début de la référence et ne bouge pas du tout. Quel est le problème, quelqu'un peut-il le savoir ?
Veuillez me donner un exemple fonctionnel minimum qui peut être compilé et exécuté. Il faut aussi des informations sur le système d'exploitation, la version et le type de terminal (après avoir redémarré le terminal, prenez les trois premières lignes de l'onglet "Log").
 
Ilyas:

Le type d'opération minimum est int, donc tous les opérandes d'un type inférieur sont implicitement convertis au type int.

Référencement

Merci. Est-il correct d'effectuer des opérations BATTERY sans fantômes en C++, comme dans MQL5 ?
 
fxsaber:
Merci. Est-il possible d'effectuer des opérations BATTERY sans fantômes en C++, comme dans MQL5 ?
Oui. Exactement la même chose. En C pur également.
 
Vladislav Andruschenko:

Je vais bien.

Thx, je vais interroger le navigateur.
 
Karputov Vladimir:
Veuillez fournir un exemple fonctionnel minimal qui peut être compilé et exécuté. Il faut également obtenir des informations sur le système d'exploitation, la version et le type de terminal (après avoir redémarré le terminal, prenez les trois premières lignes de l'onglet "Log").

Il y a un problème avec l'exemple. Le boulon shell lui-même prend plusieurs fichiers. J'en ferai un plus facile quand je rentrerai ce soir.

WinXP SP3. Construire 1434

LE 0 14:55:39.873 Terminal MetaTrader 5 build 1434 démarré (MetaQuotes Software Corp.)
DI 0 14:55:39.889 Terminal Microsoft Windows XP (PC basé sur X86), IE 08.00, Intel Pentium Dual E2200 @ 2.20GHz, RAM : 1150 / 2037 Mb, HDD : 74562 / 152625 Mb, GMT+07:00

LJ 0 14:55:39.889 Terminal C:\Program Files\MetaTrader 5

Z.U. En tout cas, okromo ces manipulations que j'ai données ci-dessus, rien d'autre n'est fait. Lorsqu'une nouvelle barre est détectée, tout est effacé et une nouvelle ligne est tracée. Mais un exemple complet pour la compilation que je vais faire.

 
Slawa:
Oui. Exactement la même chose. En C pur, aussi.
Merci. Dommage qu'ils aient aussi des béquilles historiques.
 
Alexey Kravchenko:

Il y a un problème avec l'exemple. Le boulon shell lui-même prend plusieurs fichiers. J'en ferai un plus facile quand je rentrerai ce soir.

WinXP SP3. Construire 1434

LE 0 14:55:39.873 Terminal MetaTrader 5 build 1434 démarré (MetaQuotes Software Corp.)
DI 0 14:55:39.889 Terminal Microsoft Windows XP (PC basé sur X86), IE 08.00, Intel Pentium Dual E2200 @ 2.20GHz, RAM : 1150 / 2037 Mb, HDD : 74562 / 152625 Mb, GMT+07:00

LJ 0 14:55:39.889 Terminal C:\Program Files\MetaTrader 5

Z.U. En tout cas, okromo ces manipulations que j'ai données ci-dessus, rien d'autre n'est fait. Lorsqu'une nouvelle barre est détectée, tout est effacé et une nouvelle ligne est tracée. Mais un exemple complet pour la compilation que je vais faire.

Lorsque nous aurons un exemple, nous combinerons tout en un seul post : problème, exemple, données du système d'exploitation et du terminal.
 
Comment désactiver l'enregistrement Unicode dans le méta-éditeur ? Il a besoin de l'ANSI.
Raison: