Erreurs, bugs, questions - page 1804
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Le sommeil n'est nécessaire que lorsque le symbole n'est pas dans Market Watch. Pour tous les symboles qui sont dans Market Watch avant (et pendant) l'indicateur, aucun glissement n'est nécessaire.
1531 - les freins de Metaquotes-Demo n'ont pas disparu.
Demande et réponse
Request.magic = 0
Request.order = 0
Request.symbol = #KO
Request.volume = 1.0
Request.price = 40.31
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 100
Request.type = ORDER_TYPE_BUY (0)
Request.type_filling = ORDER_FILLING_RETURN (2)
Request.type_time = ORDER_TIME_GTC (0)
Request.expiration = 1970.01.01 00:00:00
Request.comment = My Position
Request.position = 0
Request.position_by = 0
Result.retcode = 10009
Result.deal = 117613087
Result.order = 133997293
Result.volume = 1.0
Result.price = 40.31
Result.bid = 40.28
Result.ask = 40.31
Result.comment = Request executed 345.781 + 26.356 ms
Result.request_id = 5712
Result.retcode_external = 0
OrderSend a pris 345 ms, et il a fallu 26 ms pour que la commande et l'offre correspondantes soient disponibles dans l'historique. C'est-à-dire une synchronisation très lente que je n'ai jamais vue auparavant.
Journal standard
2017.02.14 22:26:46.852 Trades '5122740': accepted prices for #KO 1.00
2017.02.14 22:26:46.852 Trades '5122740': answer prices for #KO 1.00 40.28 / 40.31 in 86.046 ms (0.190 ms on server)
2017.02.14 22:26:46.852 Trades '5122740': request buy 1.00 #KO at 40.31
2017.02.14 22:26:47.107 Trades '5122740': accepted request buy 1.00 #KO at 40.31
2017.02.14 22:26:47.107 Trades '5122740': deal #117613087 buy 1.00 #KO at 40.31 done (based on order #133997293)
2017.02.14 22:26:47.107 Trades '5122740': order #133997293 buy 1.00 / 1.00 #KO at 40.31 done in 345.709 ms (3.022 ms on server)
Le nouveau journal est maintenant en 1531 ! S'il vous plaît, expliquez dans ce cas, ce qui est quoi.
ZZY log presque immédiatement après le ralentissement.
2017.02.14 22:26:47.503 Trades '5122740': accepted prices for #KFT 1.00
2017.02.14 22:26:47.506 Trades '5122740': answer prices for #KFT 1.00 49.17 / 49.20 in 70.980 ms (4.166 ms on server)
2017.02.14 22:26:47.506 Trades '5122740': request buy 1.00 #KFT at 49.20
2017.02.14 22:26:47.583 Trades '5122740': accepted request buy 1.00 #KFT at 49.20
2017.02.14 22:26:47.583 Trades '5122740': deal #117613092 buy 1.00 #KFT at 49.20 done (based on order #133997299)
2017.02.14 22:26:47.583 Trades '5122740': order #133997299 buy 1.00 / 1.00 #KFT at 49.20 done in 149.304 ms (3.015 ms on server)
Ce sont des caractères demandés, donc les ordres de marché sont plus lents que les autres.
Les freins au TRADE_ACTION_REMOVE.
Request.magic = 0
Request.order = 134003202
Request.symbol =
Request.volume = 0.0
Request.price = 0.0
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 0
Request.type = ORDER_TYPE_BUY (0)
Request.type_filling = ORDER_FILLING_FOK (0)
Request.type_time = ORDER_TIME_GTC (0)
Request.expiration = 1970.01.01 00:00:00
Request.comment =
Request.position = 0
Request.position_by = 0
Result.retcode = 10009
Result.deal = 0
Result.order = 134003202
Result.volume = 0.0
Result.price = 0.0
Result.bid = 0.0
Result.ask = 0.0
Result.comment = Request executed 290.089 + 0.005 ms
Result.request_id = 10078
Result.retcode_external = 0
GG 0 23:02:46.849 Trades '5122740': accepted buy limit 1.00 Si-3.17 at 56288
PR 0 23:02:46.852 Trades '5122740': order #134003202 buy limit 1.00 / 1.00 Si-3.17 at market done in 54.423 ms (0.342 ms on server)
PR 0 23:02:46.854 Trades '5122740': cancel order #134003202 buy limit 1.00 Si-3.17 at 56288
LL 0 23:02:47.142 Trades '5122740': accepted cancel order #134003202 buy limit 1.00 Si-3.17 at 56288
CE 0 23:02:47.144 Trades '5122740': cancel #134003202 buy limit 1.00 Si-3.17 at market done in 290.050 ms (1.400 ms on server)
Comment se fait-il qu'il n'y ait pas de prix, il y a même un prix dans le journal ? !
Requête
2017.02.14 23:18:41.442 Request.magic = 0
2017.02.14 23:18:41.442 Request.order = 0
2017.02.14 23:18:41.442 Request.symbol = EURPLN
2017.02.14 23:18:41.442 Request.volume = 1.0
2017.02.14 23:18:41.442 Request.price = 4.30632
2017.02.14 23:18:41.442 Request.stoplimit = 0.0
2017.02.14 23:18:41.442 Request.sl = 0.0
2017.02.14 23:18:41.442 Request.tp = 0.0
2017.02.14 23:18:41.442 Request.deviation = 100
2017.02.14 23:18:41.442 Request.type = ORDER_TYPE_BUY (0)
2017.02.14 23:18:41.442 Request.type_filling = ORDER_FILLING_RETURN (2)
2017.02.14 23:18:41.442 Request.type_time = ORDER_TIME_GTC (0)
2017.02.14 23:18:41.442 Request.expiration = 1970.01.01 00:00:00
2017.02.14 23:18:41.442 Request.comment = My Position
2017.02.14 23:18:41.442 Request.position = 0
2017.02.14 23:18:41.442 Request.position_by = 0
2017.02.14 23:18:41.442 Result.retcode = 10021
2017.02.14 23:18:41.442 Result.deal = 0
2017.02.14 23:18:41.442 Result.order = 0
2017.02.14 23:18:41.442 Result.volume = 0.0
2017.02.14 23:18:41.442 Result.price = 0.0
2017.02.14 23:18:41.442 Result.bid = 0.0
2017.02.14 23:18:41.442 Result.ask = 0.0
2017.02.14 23:18:41.442 Result.comment = No prices 0.028 + 0.000 ms
2017.02.14 23:18:41.442 Result.request_id = 0
2017.02.14 23:18:41.442 Result.retcode_external = 0
2017.02.14 23:18:41.442
2017.02.14 23:18:41.442 SymbolInfoDouble(Symb,::SYMBOL_BID) = 4.30151
2017.02.14 23:18:41.442 SymbolInfoDouble(Symb,::SYMBOL_ASK) = 4.30632
Erreur [Pas de prix] sur place
Comment peut-il n'y avoir aucun prix, même dans le journal ? !
Je suis actuellement en communication avec le support technique d'une très célèbre entreprise sur L... (En ce moment je discute avec le support technique d'une société très connue L. (notre correspondance est confidentielle, je ne l'appellerai pas ainsi), ils m'expliquent que le temps d'exécution de leur serveur est le même pour les ordres venant de MT4, ils ont MT4, ils ont FIX et c'est environ 1-6 ms. Ensuite, je leur ai demandé quel est le temps passé sur 40-50 ms. lors de la négociation à partir de MT4, puisque du moment de l'envoi de l'ordre et d'obtenir une réponse environ 40-60 ms. Ils haussent les épaules de manière tolérante, comme s'ils cherchaient la latence du réseau, je leur dis que le ping est de 1 à 2 ms, et ils haussent à nouveau les épaules. La conclusion est que la partie serveur de MT4/5 est lente. Maintenant, de nouveaux journaux le montrent. Je comprends que le temps ne peut pas être "propre" comme FIX, mais au moins il devrait être du même ordre.
SZY. En ce moment, je parle au support technique d'une très célèbre compagnie sur L... (Je ne sais pas pourquoi je ne les appelle pas, ils m'expliquent que le temps d'exécution sur leur serveur commercial est le même que pour les ordres sortant de MT4 (ils ont MT4) qui sont envoyés par FIX et est d'environ 1-6ms. Ensuite, je leur ai demandé quel est le temps passé sur 40-50 ms. lors de la négociation à partir de MT4, puisque du moment de l'envoi de l'ordre et d'obtenir une réponse environ 40-60 ms. Ils haussent les épaules de manière tolérante, comme s'ils cherchaient la latence du réseau, je leur dis que le ping est de 1 à 2 ms, et ils haussent à nouveau les épaules. La conclusion est que la partie serveur de MT4/5 est lente. Maintenant, de nouveaux journaux le montrent. Je comprends que le temps ne peut pas être "propre" comme FIX, mais au moins il devrait être du même ordre.
EN L... n'ont pas oublié que lorsqu'ils reçoivent un ordre dans leur système, le temps d'exécution dans le système lui-même et le renvoi de l'ordre sont minuscules. Ils peuvent obtenir l'ordre à partir du serveur MT4 ou via FIX et leurs autres API. Le serveur MT4 lui-même consacre plusieurs dizaines de ms à son traitement interne, qui n'est en aucun cas lié à l'exécution.
Il fut un temps où le temps minimum sur MT4 était de 150 ms. Il semble que quelque chose ait été sérieusement modifié, car il est devenu 40-60. Mais MT5 est nettement plus rapide. Maintenant je peux voir dans les journaux combien de temps le serveur a travaillé. Il ne reste plus qu'à comprendre à quoi est consacré l'essentiel du temps.
Erreur de compilation : impossible d'accéder à f() //2
#import "Test.ex5"
void f(); //1
#import
void f() {} //2
void OnStart()
{
fn g1 = Test::f; //нормально
fn g2 = f; //Error: 'f' - cannot resolve function address
}
@Slawa, veuillez clarifier, y a-t-il des restrictions sur l'écriture des tampons de l'indicateur en dehors de la fonction OnCalculate() ? En cas d'écriture de tampons dans les fonctions OnTimer(), OnBookEvent(), OnChartEvent(), tout sera-t-il toujours écrit correctement ?
Mais vous pouvez rencontrer un problème de redistribution des tampons au moment de l'ajout d'une nouvelle barre (la redistribution est effectuée avec une réserve, donc pas à chaque nouvelle barre).
Tous les traitements sont effectués dans un seul fil, il ne devrait donc pas y avoir de collisions. Essayez