вывод данных в csv файл при помощи printdebug

4/21/2013 4:49:08 PM
Gravatar
Total Posts 2

вывод данных в csv файл при помощи printdebug

Суть траблы мне надо выводить данные в csv, в примере самого велса пробую такой код: 

protected override void Execute(){ for(int bar = 60; bar < Bars.Count; bar++) { // Print the bars where there were SMA crossovers if ( CrossOver( bar, SMA.Series( Close, 20 ), SMA.Series( Close, 60 ) ) ) { PrintDebug( bar ); } }}

 

у меня показывает пересечения машки на экране номера баров, я плохо понимаю в си и не смогу сам или через гугл понять как то же самое выкидывать в csv. Плиз помогиет на том же примере выкидывать данные в csv

4/23/2013 3:19:55 PM
Gravatar
Total Posts 42

Re: вывод данных в csv файл при помощи printdebug

Все достаточно просто.

Метод PrintDebug печатает только в окно Debug Messages, а вам надо печатать в файл.

Для этого надо открыть файл для записи, например с помощью конструирования объекта new System.IO.StreamWriter(path, true)

здесь path - это строковая переменная, в которой храниться путь к файлу, в который вы хотите писать, а второй параметр true для добавления данных в файл или false для перезаписи файла.

Сохранив этот объект в переменную, например file, можно вызвать метод file.WriteLine(data) - этот метод добавляет в файл строчку с текстом дата.

Теперь итоговый код примера:

string path = @"c:\temp\file.txt";//папка temp на диске c должна быть
using(System.IO.TextWriter file = new System.IO.StreamWriter(path, true))
{
   for(int bar = 60; bar < Bars.Count; bar++)
   { // Print the bars where there were SMA crossovers
      if ( CrossOver( bar, SMA.Series( Close, 20 ), SMA.Series( Close, 60 ) ) )
      {
         file.WriteLine( bar );
      }//end if
   }//end for
}//end using

Т.о. вы получите файл, в котором будет столбец с номерами баров, на которых возникло пересечение.

4/24/2013 1:13:20 AM
Gravatar
Total Posts 2

Re: вывод данных в csv файл при помощи printdebug

Большое спасибо, попробую так