Backtesting avec données en ticks - page 2

 

Oui, encore une fois, on s'est raté. Pourrais-je supprimer les données de volume en mettant toutes les valeurs de volume à 1 ?

 
mikey:

Oui, votre réponse est apparue au moment où j'ai envoyé ma dernière réponse.

RE : volume...- si mon EA ne "lit" pas le volume, suis-je en sécurité ? Je n'ai pas à m'en inquiéter ? Je n'ai pas pensé au volume - mais comme je l'ai dit, mon EA ne le "lit" pas. Donc, juste pour clarifier - je peux ignorer le volume ? Ou bien devrais-je fixer le volume à 1 pour toutes les barres ?

Si votre EA n'utilise pas les données de volume, alors il peut être ignoré. Vous devez le mettre à 1 pour que votre méthode fonctionne, sinon le testeur créerait plus d'un tick par barre...
 

Oui. Je n'ai pas d'indicateurs qui regardent les barres ou quelque chose comme ça. Swaps - c'est un bon point. Je le garderai à l'esprit. Je suis juste désireux d'utiliser cette nouvelle méthode dès que possible.

Je suis presque prêt à partir si je peux juste résoudre ce problème de décalage temporel. Donc, considérez ces barres (dans un fichier texte .csv) :

NB : date, heure, ouverture, haut, bas, fermeture, volume

20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:01,71.75,71.75,71.75,71.75,1

Je veux donc changer l'heure de la deuxième barre à 18:01 pour que les deux barres supérieures aient des heures différentes (elles ont bien sûr des heures différentes au niveau des sous-minutes, mais je veux qu'elles aient des heures réellement différentes au niveau des minutes).

Ensuite, je devrai changer l'heure de la troisième barre à 18:02. Donc, maintenant les 3 barres ont des temps différents.

Je pense qu'un bon pseudo-code pour l'opération est :

time_of_next_bar = time_of_previous bar +1 ;

Mais il faudrait alors intégrer des contraintes pour tenir compte du fait que seulement 60 minutes devraient déplacer l'heure, et éventuellement déplacer la date, le mois, etc.

J'ai toutes mes barres dans un fichier .csv et je dois trouver un moyen de les traiter de cette manière. Peut-être en utilisant Perl ? J'ai regardé dans le fichier MQl que vous avez lié et je n'ai pas vu de méthode transposable pour cela.

 

Je pense que le plus simple serait de trouver une très longue liste en deux colonnes de dates et d'heures (avec ce format) :

20100831,18:00

20100831,18:01

20100831,18:02

20100831,18:03

20100831,18:04

20100831,18:05

etc. etc.

Il est peut-être préférable de trouver une telle liste plutôt que d'en générer une.

Je peux alors simplement substituer ces colonnes dans mon fichier csv. J'ai essayé de suivre cette voie, par exemple en exportant les données M1 de metatrader et en prenant leurs colonnes. MAIS la quantité de données historiques M1 que je peux obtenir pour metatrader (quelques mois) n'est pas assez longue pour mes besoins. Peut-être que si j'avais quelques années de données, cela pourrait fonctionner.

 
mikey:

Oui. Je n'ai pas d'indicateurs qui regardent les barres ou quelque chose comme ça.

Vous êtes sûr de ça ? presque tous les indicateurs utilisent des barres dans leurs calculs... tous les indicateurs où vous pouvez définir une période vont probablement échouer. tous les appels high[] low[] open[] close[] vont échouer, en fait toutes les fonctions d'accès aux séries temporelles sont affectées.

Dans votre cas, j'inspecterais les fichiers sur le site web pour créer un fichier tick personnalisé et utiliser un terminal patché.

 

Voici un script simple pour faire le travail. Je ne l'ai vérifié qu'une seule fois, alors faites attention aux bugs oubliés... De plus, ce n'est probablement pas la façon la plus rapide et la plus efficace de le faire.

#property show_inputs
extern string     src_file = "sample.csv";             // source file name
extern string     trg_file = "output.csv";             // target file name
extern datetime   st_date = D'2000.01.01 00:00';       // start date for written data (this could be whatever...)

int start()
{
   string sclose;             // tick close price - we assume O=H=L=C
   
   // get handles for source and target file (NOTE: will overwrite target file if exists!!)
   int src_handle = FileOpen(src_file, FILE_CSV|FILE_READ, ',');
   int trg_handle = FileOpen(trg_file, FILE_CSV|FILE_WRITE, ',');
      
   // read each line from source, process it and write to target
   while(!FileIsEnding(src_handle)) {
      // read data from source by fields (convinient since it's a CSV file)
      FileReadString(src_handle);    // skip date     
      FileReadString(src_handle);    // skip time
      FileReadString(src_handle);    // skip open
      FileReadString(src_handle);    // skip high
      FileReadString(src_handle);    // skip low
      sclose = FileReadString(src_handle);   // GET CLOSE PRICE
      FileReadString(src_handle);    // skip volume
      
      // build output line as a single string (it's just simpler to do it this way)
      string output = StringConcatenate(
                        TimeToStr(st_date,TIME_DATE), ",",    // proper date and time format
                        TimeToStr(st_date,TIME_MINUTES), ",",
                        sclose, ",",      // to make sure OHLC are identical we just use close price
                        sclose, ",",
                        sclose, ",",
                        sclose, ",",
                        "1"               // this is fixed volume = 1 so as we'll have 1 tick per bar only
                      );          

      FileWrite(trg_handle,output);
      st_date += 60;                      // add 1 minute (60 seconds) to our time counter
   } // end while
   
   // close source and target file
   FileClose(src_handle);        
   FileClose(trg_handle);
   return(0);
}

Le script est assez explicite... Le fichier source doit être dans le dossier 'experts/files'. Pour la date de début, vous pouvez entrer ce que vous voulez, puisque le temps sera étiré de toute façon et que les timestamps n'ont pas de sens...


J'ai toujours de sérieux doutes sur ce que vous essayez de faire, mais je serais heureux que vous fassiez part de vos conclusions ici. Bonne chance.

 
gordon:

Voici un script simple pour faire le travail. Je l'ai vérifié une seule fois, alors faites attention aux bugs oubliés... Aussi - ce n'est probablement pas la façon la plus rapide/la meilleure de le faire.

Le script est assez explicite... Le fichier source doit être dans le dossier 'experts/files'. Pour la date de début, vous pouvez entrer ce que vous voulez, puisque le temps sera étiré de toute façon et que les timestamps n'ont pas de sens...


J'ai encore de sérieux doutes sur ce que vous essayez de faire, mais je serais heureux que vous fassiez part de vos conclusions ici. Bonne chance.


C'est génial ! Merci !

MAIS je n'ai pas encore réussi à le faire fonctionner. Donc, je prends votre code MLQ4, je le sauvegarde et le compile et je l'attache à un graphique symbol CL (et je coche la case "Autoriser le trading en direct") - dans le log, je peux voir que le chargement est correct, etc.

Comme PRELUDE/SET UP à cela, j'ai créé 2 fichiers :

sample.csv (avec les données) - j'ai créé un fichier avec peu de données pour le tester afin que tout se passe rapidement lorsque nous essayons de le faire fonctionner.

output.csv (vide)

J'ai placé les DEUX dans experts/files. MAIS je ne vois pas de données écrites dans output.csv. Ai-je placé le fichier output.csv au bon endroit ? Devrais-je même créer mon propre fichier output.csv vide ? Est-ce que c'est la bonne chose à faire ?

PS> Juste au cas où cela aurait une incidence - j'ai coupé et collé mon exemple de fichier .csv ci-dessous :

20100831,18:00,71.70,71.70,71.70,71.70,2
20100831,18:00,71.70,71.70,71.70,71.70,1
20100831,18:00,71.70,71.70,71.70,71.70,1
20100831,18:00,71.70,71.70,71.70,71.70,1
20100831,18:00,71.70,71.70,71.70,71.70,1
20100831,18:00,71.73,71.73,71.73,71.73,2
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.73,71.73,71.73,71.73,1
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.75,71.75,71.75,71.75,7
20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:00,71.74,71.74,71.74,71.74,1
20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:00,71.75,71.75,71.75,71.75,3
20100831,18:00,71.75,71.75,71.75,71.75,7
20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:00,71.75,71.75,71.75,71.75,1
20100831,18:00,71.71,71.71,71.71,71.71,1
20100831,18:00,71.70,71.70,71.70,71.70,1
20100831,18:00,71.68,71.68,71.68,71.68,1
20100831,18:00,71.71,71.71,71.71,71.71,1
20100831,18:00,71.71,71.71,71.71,71.71,1
20100831,18:00,71.69,71.69,71.69,71.69,1
20100831,18:00,71.69,71.69,71.69,71.69,1
20100831,18:00,71.68,71.68,71.68,71.68,2
20100831,18:00,71.67,71.67,71.67,71.67,1
20100831,18:00,71.72,71.72,71.72,71.72,1
20100831,18:00,71.72,71.72,71.72,71.72,1
20100831,18:00,71.72,71.72,71.72,71.72,1
20100831,18:00,71.72,71.72,71.72,71.72,1
20100831,18:00,71.71,71.71,71.71,71.71,1
20100831,18:00,71.71,71.71,71.71,71.71,1
20100831,18:00,71.70,71.70,71.70,71.70,1
20100831,18:01,71.71,71.71,71.71,71.71,1
20100831,18:01,71.72,71.72,71.72,71.72,1
20100831,18:01,71.71,71.71,71.71,71.71,1
20100831,18:01,71.71,71.71,71.71,71.71,1
20100831,18:01,71.71,71.71,71.71,71.71,1
20100831,18:01,71.70,71.70,71.70,71.70,1
20100831,18:01,71.70,71.70,71.70,71.70,3
20100831,18:01,71.70,71.70,71.70,71.70,5
20100831,18:01,71.70,71.70,71.70,71.70,1
20100831,18:01,71.71,71.71,71.71,71.71,1
20100831,18:01,71.70,71.70,71.70,71.70,4
20100831,18:01,71.70,71.70,71.70,71.70,1
20100831,18:01,71.71,71.71,71.71,71.71,2
20100831,18:01,71.71,71.71,71.71,71.71,4
20100831,18:01,71.71,71.71,71.71,71.71,1
20100831,18:02,71.70,71.70,71.70,71.70,1
20100831,18:02,71.70,71.70,71.70,71.70,1
20100831,18:02,71.70,71.70,71.70,71.70,1
20100831,18:02,71.70,71.70,71.70,71.70,1
20100831,18:02,71.70,71.70,71.70,71.70,1
20100831,18:02,71.70,71.70,71.70,71.70,1
20100831,18:02,71.70,71.70,71.70,71.70,1
20100831,18:02,71.74,71.74,71.74,71.74,1
20100831,18:03,71.74,71.74,71.74,71.74,1
20100831,18:03,71.75,71.75,71.75,71.75,1
20100831,18:03,71.75,71.75,71.75,71.75,1
20100831,18:03,71.77,71.77,71.77,71.77,1
20100831,18:03,71.78,71.78,71.78,71.78,1
20100831,18:03,71.78,71.78,71.78,71.78,5
20100831,18:03,71.78,71.78,71.78,71.78,5
20100831,18:03,71.79,71.79,71.79,71.79,1
20100831,18:03,71.78,71.78,71.78,71.78,1
20100831,18:03,71.78,71.78,71.78,71.78,1
20100831,18:03,71.79,71.79,71.79,71.79,1
20100831,18:04,71.79,71.79,71.79,71.79,1
20100831,18:04,71.79,71.79,71.79,71.79,1
20100831,18:04,71.80,71.80,71.80,71.80,1
20100831,18:04,71.80,71.80,71.80,71.80,2
20100831,18:04,71.80,71.80,71.80,71.80,1
20100831,18:04,71.80,71.80,71.80,71.80,3
20100831,18:04,71.80,71.80,71.80,71.80,17
20100831,18:04,71.80,71.80,71.80,71.80,1
20100831,18:04,71.80,71.80,71.80,71.80,4
20100831,18:04,71.79,71.79,71.79,71.79,1
20100831,18:04,71.78,71.78,71.78,71.78,1
20100831,18:04,71.78,71.78,71.78,71.78,1
20100831,18:04,71.79,71.79,71.79,71.79,1
20100831,18:04,71.80,71.80,71.80,71.80,1
20100831,18:05,71.78,71.78,71.78,71.78,1
20100831,18:05,71.78,71.78,71.78,71.78,2
20100831,18:05,71.77,71.77,71.77,71.77,1
20100831,18:05,71.77,71.77,71.77,71.77,1
20100831,18:05,71.77,71.77,71.77,71.77,1
20100831,18:05,71.77,71.77,71.77,71.77,1
20100831,18:05,71.77,71.77,71.77,71.77,1
20100831,18:05,71.76,71.76,71.76,71.76,1
20100831,18:05,71.74,71.74,71.74,71.74,1
20100831,18:05,71.78,71.78,71.78,71.78,1
20100831,18:05,71.79,71.79,71.79,71.79,1
20100831,18:05,71.79,71.79,71.79,71.79,3
20100831,18:05,71.80,71.80,71.80,71.80,5
20100831,18:05,71.80,71.80,71.80,71.80,14
20100831,18:05,71.80,71.80,71.80,71.80,1
20100831,18:05,71.80,71.80,71.80,71.80,1
20100831,18:05,71.80,71.80,71.80,71.80,1
20100831,18:05,71.80,71.80,71.80,71.80,2
20100831,18:05,71.80,71.80,71.80,71.80,1
20100831,18:06,71.80,71.80,71.80,71.80,1
20100831,18:06,71.80,71.80,71.80,71.80,21
20100831,18:06,71.80,71.80,71.80,71.80,1
20100831,18:06,71.81,71.81,71.81,71.81,1
20100831,18:06,71.81,71.81,71.81,71.81,4
20100831,18:06,71.82,71.82,71.82,71.82,1
20100831,18:06,71.83,71.83,71.83,71.83,1
20100831,18:06,71.84,71.84,71.84,71.84,1
20100831,18:06,71.84,71.84,71.84,71.84,2
20100831,18:06,71.85,71.85,71.85,71.85,1
20100831,18:06,71.81,71.81,71.81,71.81,1
20100831,18:06,71.83,71.83,71.83,71.83,1
20100831,18:06,71.83,71.83,71.83,71.83,1
20100831,18:06,71.83,71.83,71.83,71.83,1
20100831,18:06,71.82,71.82,71.82,71.82,1
20100831,18:06,71.82,71.82,71.82,71.82,1
20100831,18:06,71.82,71.82,71.82,71.82,1
20100831,18:06,71.83,71.83,71.83,71.83,1
20100831,18:06,71.85,71.85,71.85,71.85,1
20100831,18:06,71.83,71.83,71.83,71.83,1
20100831,18:07,71.83,71.83,71.83,71.83,1
20100831,18:07,71.83,71.83,71.83,71.83,2
20100831,18:07,71.83,71.83,71.83,71.83,2
20100831,18:07,71.83,71.83,71.83,71.83,1
20100831,18:07,71.83,71.83,71.83,71.83,1
20100831,18:07,71.83,71.83,71.83,71.83,2
20100831,18:07,71.83,71.83,71.83,71.83,2
20100831,18:07,71.82,71.82,71.82,71.82,4
20100831,18:07,71.82,71.82,71.82,71.82,1
20100831,18:08,71.81,71.81,71.81,71.81,1
20100831,18:08,71.81,71.81,71.81,71.81,1
20100831,18:08,71.81,71.81,71.81,71.81,1
20100831,18:08,71.81,71.81,71.81,71.81,1
20100831,18:08,71.81,71.81,71.81,71.81,1
20100831,18:08,71.81,71.81,71.81,71.81,1
20100831,18:08,71.81,71.81,71.81,71.81,1
20100831,18:08,71.82,71.82,71.82,71.82,1
20100831,18:08,71.83,71.83,71.83,71.83,1
20100831,18:08,71.82,71.82,71.82,71.82,1
20100831,18:08,71.84,71.84,71.84,71.84,1
20100831,18:08,71.84,71.84,71.84,71.84,1
20100831,18:09,71.84,71.84,71.84,71.84,1
20100831,18:09,71.83,71.83,71.83,71.83,1
20100831,18:09,71.83,71.83,71.83,71.83,1
20100831,18:09,71.84,71.84,71.84,71.84,1
20100831,18:09,71.83,71.83,71.83,71.83,1
20100831,18:10,71.84,71.84,71.84,71.84,1
20100831,18:10,71.82,71.82,71.82,71.82,1
20100831,18:10,71.83,71.83,71.83,71.83,1
20100831,18:11,71.83,71.83,71.83,71.83,1
20100831,18:11,71.83,71.83,71.83,71.83,1
20100831,18:11,71.82,71.82,71.82,71.82,5
20100831,18:11,71.82,71.82,71.82,71.82,2
20100831,18:11,71.83,71.83,71.83,71.83,1
20100831,18:11,71.81,71.81,71.81,71.81,1
20100831,18:12,71.82,71.82,71.82,71.82,1
20100831,18:12,71.82,71.82,71.82,71.82,1
20100831,18:12,71.82,71.82,71.82,71.82,1
20100831,18:12,71.83,71.83,71.83,71.83,1
20100831,18:12,71.83,71.83,71.83,71.83,1
20100831,18:12,71.83,71.83,71.83,71.83,1
20100831,18:12,71.84,71.84,71.84,71.84,1
20100831,18:12,71.84,71.84,71.84,71.84,1
20100831,18:12,71.84,71.84,71.84,71.84,1
20100831,18:12,71.85,71.85,71.85,71.85,1
20100831,18:12,71.84,71.84,71.84,71.84,1
20100831,18:12,71.83,71.83,71.83,71.83,1
20100831,18:12,71.85,71.85,71.85,71.85,1
20100831,18:12,71.85,71.85,71.85,71.85,10
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,2
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.84,71.84,71.84,71.84,1
20100831,18:13,71.84,71.84,71.84,71.84,1
20100831,18:13,71.84,71.84,71.84,71.84,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.86,71.86,71.86,71.86,1
20100831,18:13,71.86,71.86,71.86,71.86,1
20100831,18:13,71.86,71.86,71.86,71.86,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:13,71.86,71.86,71.86,71.86,1
20100831,18:13,71.86,71.86,71.86,71.86,1
20100831,18:13,71.86,71.86,71.86,71.86,1
20100831,18:13,71.86,71.86,71.86,71.86,3
20100831,18:13,71.85,71.85,71.85,71.85,1
20100831,18:14,71.84,71.84,71.84,71.84,1
20100831,18:14,71.84,71.84,71.84,71.84,1
20100831,18:14,71.84,71.84,71.84,71.84,1
20100831,18:14,71.83,71.83,71.83,71.83,1
20100831,18:14,71.84,71.84,71.84,71.84,1
20100831,18:14,71.83,71.83,71.83,71.83,1
20100831,18:14,71.83,71.83,71.83,71.83,3
20100831,18:14,71.83,71.83,71.83,71.83,1
20100831,18:15,71.83,71.83,71.83,71.83,2
20100831,18:15,71.82,71.82,71.82,71.82,1
20100831,18:15,71.82,71.82,71.82,71.82,1
20100831,18:15,71.83,71.83,71.83,71.83,8
20100831,18:15,71.83,71.83,71.83,71.83,1
20100831,18:15,71.83,71.83,71.83,71.83,1
20100831,18:16,71.81,71.81,71.81,71.81,1
20100831,18:16,71.81,71.81,71.81,71.81,1
20100831,18:16,71.80,71.80,71.80,71.80,1
20100831,18:16,71.80,71.80,71.80,71.80,1
20100831,18:16,71.79,71.79,71.79,71.79,1
20100831,18:16,71.79,71.79,71.79,71.79,1
20100831,18:16,71.78,71.78,71.78,71.78,1
20100831,18:16,71.78,71.78,71.78,71.78,1
20100831,18:17,71.78,71.78,71.78,71.78,1
20100831,18:17,71.78,71.78,71.78,71.78,1
20100831,18:17,71.77,71.77,71.77,71.77,1
20100831,18:17,71.78,71.78,71.78,71.78,1
20100831,18:17,71.77,71.77,71.77,71.77,1
20100831,18:17,71.79,71.79,71.79,71.79,1
20100831,18:18,71.79,71.79,71.79,71.79,1
20100831,18:18,71.79,71.79,71.79,71.79,1
20100831,18:19,71.78,71.78,71.78,71.78,3
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:20,71.78,71.78,71.78,71.78,2
20100831,18:20,71.78,71.78,71.78,71.78,2
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:20,71.78,71.78,71.78,71.78,2
20100831,18:20,71.78,71.78,71.78,71.78,2
20100831,18:20,71.78,71.78,71.78,71.78,2
20100831,18:20,71.78,71.78,71.78,71.78,2
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:20,71.78,71.78,71.78,71.78,1
20100831,18:21,71.78,71.78,71.78,71.78,1
20100831,18:21,71.79,71.79,71.79,71.79,1
20100831,18:22,71.79,71.79,71.79,71.79,1
20100831,18:22,71.78,71.78,71.78,71.78,1
20100831,18:22,71.78,71.78,71.78,71.78,1
20100831,18:22,71.78,71.78,71.78,71.78,1
20100831,18:22,71.78,71.78,71.78,71.78,1
20100831,18:23,71.79,71.79,71.79,71.79,1
20100831,18:24,71.79,71.79,71.79,71.79,1
20100831,18:24,71.79,71.79,71.79,71.79,1
20100831,18:24,71.79,71.79,71.79,71.79,1
20100831,18:24,71.76,71.76,71.76,71.76,1
20100831,18:24,71.76,71.76,71.76,71.76,1
20100831,18:24,71.75,71.75,71.75,71.75,10
20100831,18:24,71.75,71.75,71.75,71.75,1
20100831,18:24,71.74,71.74,71.74,71.74,1
20100831,18:24,71.73,71.73,71.73,71.73,1
20100831,18:24,71.75,71.75,71.75,71.75,1
20100831,18:25,71.74,71.74,71.74,71.74,1
20100831,18:26,71.75,71.75,71.75,71.75,1
20100831,18:27,71.75,71.75,71.75,71.75,1
20100831,18:27,71.75,71.75,71.75,71.75,4
20100831,18:27,71.75,71.75,71.75,71.75,2
20100831,18:28,71.77,71.77,71.77,71.77,1
20100831,18:28,71.77,71.77,71.77,71.77,1
20100831,18:28,71.77,71.77,71.77,71.77,1
20100831,18:29,71.78,71.78,71.78,71.78,1
20100831,18:29,71.78,71.78,71.78,71.78,1
20100831,18:29,71.78,71.78,71.78,71.78,1
20100831,18:29,71.78,71.78,71.78,71.78,1
20100831,18:30,71.77,71.77,71.77,71.77,1
20100831,18:30,71.77,71.77,71.77,71.77,1
20100831,18:32,71.77,71.77,71.77,71.77,1
20100831,18:32,71.77,71.77,71.77,71.77,1
20100831,18:32,71.77,71.77,71.77,71.77,1
20100831,18:32,71.77,71.77,71.77,71.77,2
20100831,18:32,71.76,71.76,71.76,71.76,1
20100831,18:32,71.78,71.78,71.78,71.78,2
20100831,18:32,71.78,71.78,71.78,71.78,1
20100831,18:32,71.78,71.78,71.78,71.78,1
20100831,18:32,71.78,71.78,71.78,71.78,1
20100831,18:32,71.78,71.78,71.78,71.78,1
20100831,18:32,71.78,71.78,71.78,71.78,1
20100831,18:32,71.75,71.75,71.75,71.75,1
20100831,18:33,71.76,71.76,71.76,71.76,1
20100831,18:33,71.76,71.76,71.76,71.76,1
20100831,18:33,71.76,71.76,71.76,71.76,8
20100831,18:33,71.78,71.78,71.78,71.78,1
20100831,18:33,71.78,71.78,71.78,71.78,1
20100831,18:33,71.78,71.78,71.78,71.78,2
20100831,18:34,71.76,71.76,71.76,71.76,2
20100831,18:34,71.76,71.76,71.76,71.76,1
20100831,18:35,71.78,71.78,71.78,71.78,1
20100831,18:35,71.76,71.76,71.76,71.76,1
20100831,18:37,71.76,71.76,71.76,71.76,1
20100831,18:38,71.78,71.78,71.78,71.78,1
20100831,18:38,71.78,71.78,71.78,71.78,2
20100831,18:38,71.78,71.78,71.78,71.78,1
20100831,18:40,71.75,71.75,71.75,71.75,1
20100831,18:40,71.76,71.76,71.76,71.76,1
20100831,18:41,71.78,71.78,71.78,71.78,1
20100831,18:42,71.76,71.76,71.76,71.76,1
20100831,18:42,71.76,71.76,71.76,71.76,1
20100831,18:42,71.75,71.75,71.75,71.75,1
20100831,18:42,71.75,71.75,71.75,71.75,1
20100831,18:42,71.75,71.75,71.75,71.75,1
20100831,18:42,71.74,71.74,71.74,71.74,1
20100831,18:42,71.74,71.74,71.74,71.74,1
20100831,18:43,71.75,71.75,71.75,71.75,1
20100831,18:43,71.74,71.74,71.74,71.74,1
20100831,18:43,71.74,71.74,71.74,71.74,1
20100831,18:43,71.73,71.73,71.73,71.73,1
20100831,18:43,71.73,71.73,71.73,71.73,1
20100831,18:43,71.72,71.72,71.72,71.72,1
20100831,18:43,71.74,71.74,71.74,71.74,1
20100831,18:43,71.72,71.72,71.72,71.72,1
20100831,18:43,71.72,71.72,71.72,71.72,1
20100831,18:43,71.72,71.72,71.72,71.72,1
20100831,18:43,71.72,71.72,71.72,71.72,1
20100831,18:43,71.74,71.74,71.74,71.74,1
20100831,18:44,71.74,71.74,71.74,71.74,2
20100831,18:44,71.74,71.74,71.74,71.74,1
20100831,18:44,71.74,71.74,71.74,71.74,1
20100831,18:44,71.75,71.75,71.75,71.75,1
20100831,18:44,71.75,71.75,71.75,71.75,1
20100831,18:44,71.75,71.75,71.75,71.75,1
20100831,18:44,71.75,71.75,71.75,71.75,2
20100831,18:45,71.74,71.74,71.74,71.74,1
20100831,18:45,71.74,71.74,71.74,71.74,3
20100831,18:45,71.74,71.74,71.74,71.74,1
20100831,18:45,71.76,71.76,71.76,71.76,2
20100831,18:45,71.76,71.76,71.76,71.76,1
20100831,18:46,71.76,71.76,71.76,71.76,2
20100831,18:46,71.76,71.76,71.76,71.76,6
20100831,18:46,71.74,71.74,71.74,71.74,1
20100831,18:46,71.74,71.74,71.74,71.74,1
20100831,18:46,71.73,71.73,71.73,71.73,1
20100831,18:46,71.73,71.73,71.73,71.73,2
20100831,18:46,71.73,71.73,71.73,71.73,1
20100831,18:46,71.73,71.73,71.73,71.73,1
20100831,18:46,71.76,71.76,71.76,71.76,2
20100831,18:47,71.74,71.74,71.74,71.74,1
20100831,18:47,71.74,71.74,71.74,71.74,1
20100831,18:47,71.73,71.73,71.73,71.73,1
20100831,18:47,71.72,71.72,71.72,71.72,1
20100831,18:47,71.72,71.72,71.72,71.72,1
20100831,18:47,71.72,71.72,71.72,71.72,1
20100831,18:47,71.72,71.72,71.72,71.72,1
20100831,18:47,71.74,71.74,71.74,71.74,2
20100831,18:47,71.74,71.74,71.74,71.74,2
20100831,18:48,71.74,71.74,71.74,71.74,1
20100831,18:48,71.74,71.74,71.74,71.74,1
20100831,18:48,71.74,71.74,71.74,71.74,1
20100831,18:49,71.73,71.73,71.73,71.73,1
20100831,18:49,71.73,71.73,71.73,71.73,1
20100831,18:49,71.72,71.72,71.72,71.72,2
20100831,18:49,71.72,71.72,71.72,71.72,3
20100831,18:49,71.71,71.71,71.71,71.71,1
20100831,18:50,71.73,71.73,71.73,71.73,1
20100831,18:50,71.74,71.74,71.74,71.74,1
20100831,18:50,71.74,71.74,71.74,71.74,1
20100831,18:50,71.72,71.72,71.72,71.72,1
20100831,18:50,71.72,71.72,71.72,71.72,1

 
mikey:

MAIS je n'ai pas encore réussi à le faire fonctionner. Donc, je prends votre code MLQ4, je l'enregistre et le compile et je l'attache à un graphique de symbole CL (et je coche la case "Allow live trading") - dans le log, on peut voir que le chargement est correct, etc.

Comme PRELUDE/SET UP à cela, j'ai créé 2 fichiers :

sample.csv (avec les données) - j'ai créé un fichier avec peu de données pour le tester afin que tout se passe rapidement lorsque nous essayons de le faire fonctionner.

output.csv (vide)

J'ai placé les DEUX dans experts/files. MAIS je ne vois pas de données écrites dans output.csv. Ai-je placé le fichier output.csv au bon endroit ? Devrais-je même créer mon propre fichier output.csv vide ? Est-ce que c'est la bonne chose à faire ?

  1. Il n'est pas nécessaire de créer le fichier de sortie, il sera créé automatiquement (s'il existe déjà, il sera écrasé).
  2. Assurez-vous que ceci est compilé comme un script.
  3. Assurez-vous que le fichier d'exemple se trouve dans le répertoire 'experts/files'.
  4. Obtenez-vous des erreurs/messages dans l'onglet "experts" ?
 
J'ai refait le test avec votre exemple et cela fonctionne. Ci-joint - script, exemple et le résultat (dans une archive RAR).
Dossiers :
files.rar  3 kb
 

Mon erreur - je l'ai mis comme un EA au lieu d'un script. Il fonctionne maintenant - comme un script !

Une chose cependant - pas un drame majeur - mais la dernière ligne du fichier de sortie est ainsi :

2004.02.23,08:34,,,,,1

Il s'agit donc d'un surplus de données redondantes - aucune information n'est perdue lorsque l'on coupe le fichier.

Donc, maintenant j'essaie ceci avec le testeur de stratégie. Il est en cours d'exécution maintenant - prendre un âge. Mais je vous tiendrai au courant de tout.

Raison: