Erreurs, bugs, questions - page 2988

 

Forum sur le trading, les systèmes de trading automatisé et les tests de stratégies de trading

Questions des nuls

Andrey Dik, 2013.07.11 20:54

Comment puis-je savoir que TRADE_RETCODE_MARKET_CLOSED (le marché est fermé) pour un symbole spécifié sans envoyer un ordre de transaction au serveur ?
.

Si je sais que les cotations vont, mais que le commerce est interdit pendant quelques minutes après l'ouverture de la session de négociation, comment puis-je savoir si le commerce est autorisé à aller sur demande à tout moment sans déranger le serveur avec des ordres de commerce ? depuis presque 8 ans il n'y a rien de nouveau dans l'aide sur ce sujet, s'il vous plaît corrigez-moi si je me trompe.

 
Andrey Dik:

Il arrive que les cotations s'envolent mais que le trading soit suspendu pendant quelques minutes après l'ouverture de la session de trading, comment savoir si le trading est autorisé sur demande à tout moment sans marteler le serveur d'ordres de trading ? Depuis presque 8 ans, rien de nouveau n'est apparu dans l'aide sur ce sujet, merci de me corriger si je me trompe.

De même, si FORTS est "barré" et que la négociation est suspendue.

 
Andrey Dik:

Il y a des moments où les cotations s'envolent mais où la négociation n'est pas autorisée pendant quelques minutes de plus et après l'ouverture de la session de négociation, comment puis-je savoir si la négociation sur demande est autorisée à tout moment sans marteler le serveur d'ordres de négociation ? en presque 8 ans, rien de nouveau sur ce sujet n'est apparu dans l'aide, merci de me corriger si je me trompe.

Jetez un coup d'œil à la spécification.


Si elle est remplie correctement, il n'y a pas de problème.

 
JRandomTrader:

De même, s'il y a une "barre" sur le FORTS et que la négociation est suspendue.

Ce n'est pas clair, il y a donc une solution ou pas ?

 
Andrey Dik:

Je ne comprends pas, y a-t-il une solution ou pas ?

Ce n'est pas une solution, c'est une extension de la question.

 
Alexey Viktorov:

Regardez le cahier des charges.


Si elle est remplie correctement, il n'y a pas de problème.

malheureusement, il y a des problèmes, la session de négociation est ouverte et la négociation est interdite "le marché est fermé". par conséquent - les sessions de négociation ne peuvent pas servir de guide fiable. vous avez besoin d'un moyen direct de savoir à tout moment en demandant "je veux négocier. puis-je envoyer des ordres de négociation maintenant ?"

 
Alexey Viktorov:

Regardez le cahier des charges.


S'il est correctement rempli, il n'y a aucun problème.

Pour FORTS, il est écrit 6:45-24:00, et non 7:00-23:50. Mais c'est bien.

Mais qu'en est-il de la compensation, qui peut avoir des durées différentes ?

 

Bonjour, messieurs.

Je n'arrive pas à comprendre l'exécution de fonctions comme TimeCurrent() ou iTime.

1. Lorsque j'imprime cette fonction, elle devrait afficher le nombre de secondes écoulées depuis 1970, mais elle n'affiche qu'une jolie date au format aa.mm.jj hh:mm:ss. Comment puis-je connaître le nombre de secondes ?

2. J'ai écrit un script simple (voir ci-dessous), mais lorsque je l'exécute pour la première fois, j'obtiens un résultat totalement nul - l'heure d'ouverture de la dernière barre pourrait être quelques heures plus tôt qu'elle ne l'était réellement, et aujourd'hui la dernière barre d'une minute a été ouverte en 1970.Si je réexécute le même script après cela, le résultat est assez précis, bien que l'heure d'ouverture de la barre M1 puisse être décalée. J'ai 2terminaux installés et j'obtiens le même résultat.

Est-ce que quelqu'un a rencontré un tel problème ou est-ce que c'est juste moi ?

Merci à tous.

string FI, ArrFI[]={"AUDCAD","AUDCHF","AUDJPY","AUDNZD","AUDUSD","CADCHF","CADJPY","CHFJPY","EURAUD","EURCAD", "EURCHF",
                    "EURGBP","EURJPY","EURNZD","EURRUB","EURUSD","GBPAUD","GBPCAD","GBPCHF","GBPJPY","GBPNZD", "GBPSGD",
                    "GBPUSD","NZDCAD","NZDCHF","NZDJPY","NZDUSD","USDCAD","USDCHF","USDJPY","USDRUB","XAGUSD", "XAUUSD" };
int ArrTF[]={PERIOD_W1,PERIOD_D1,PERIOD_H4,PERIOD_H1,PERIOD_M30,PERIOD_M15,PERIOD_M5,PERIOD_M1}, TF, fi,tf,
    qTF=ArraySize(ArrTF), qFI=ArraySize(ArrFI);
//---
void OnStart()
{for(fi=0; fi<qFI; fi++)
    {FI=ArrFI[fi]; for(tf=0; tf<qTF; tf++)
                      {TF=ArrTF[tf]; Print(FI,",TF ",TF,"   время ",TimeCurrent(),"   текущий бар ",iTime(FI,TF,0));}
    }
}//end of Start
 

Je ne sais pas où poster ceci, alors je vais le poster ici.

Auparavant, le lien provenait du profil "Tous lesmessages", qui conduisaiten quelque sorte à https://www.mql5.com/ru/users/traveller00/publications/all aux messages. Ça fait des heures que ça va aux publications. Maintenant, comment puis-je parcourir les messages ? Est-ce quelque chose de cassé ou est-ce une fonctionnalité maintenant ?

 
traveller00:

Est-ce quelque chose de cassé ou est-ce une fonctionnalité maintenant ?

c'est un événement courant, il fonctionnera probablement comme d'habitude demain.

sable57fx:

1. Lors de l'impression, le nombre de secondes écoulées depuis 1970 devrait être affiché, mais c'est une date joliment formatée au format aa.mm.jj hh:mm:ss qui s'affiche. Comment connaître le nombre de secondes ?

Print("sec = ",(int)TimeCurrent());