Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 Легкий тюнинг робота для Смарта + вопрос по экспорту в тхт Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
max



Зарегистрирован: 01.08.2008
Сообщения: 253

СообщениеДобавлено: Пн Ноя 21, 2011 9:46 pm Ответить с цитатой Вернуться к началу

Привет! Решил совместить приятное и полезное
- добавить в код вывод в АА данных и их последующий экспорт этих данных в тхт в реальном времени. Для чего нужно = хочу кое чего проверить а для этого нужно собрать "статистику"

Код для вывода в АА
Код:
BidSize =GetRTData("BidSize");
Bid =GetRTData("Bid");
Ask =GetRTData("Ask");
AskSize =GetRTData("AskSize");
Last =GetRTData("Last");
LastSize =GetRTData("TradeVolume");

Filter=1;
AddColumn(BidSize,"BidSize");
AddColumn(Bid,"Bid");
AddColumn(AskSize,"AskSize");
AddColumn(Ask,"Ask");
AddColumn(LastSize,"LastSize");
AddColumn(Last,"Last");


Ну естественно в случае добавления в робота убиваем Filter
Теперь вопрос - как это заставить писать в файл? Вот попытался написать было код но что-то фигня...
Вообщем нужно как-то заставить Эксплорейшн ежесекундно (выставлен такой промежуток) дописывать файлик

Код:
SetBarsRequired(100000, 0);
s = ParamStr("Имя файла", "");
e = ParamToggle("Экспорт", "Off|On", 0);
//bar=Param("????? ??????",3000,1,10000,100,sincr=0);
min_buffer=Param("Буфер мин",3,1,15,1,sincr=0);

BidSize =Nz(GetRTData("BidSize"));
Bid =Nz(GetRTData("Bid"));
Ask =Nz(GetRTData("Ask"));
AskSize =Nz(GetRTData("AskSize"));
Last =Nz(GetRTData("Last"));
LastSize =Nz(GetRTData("TradeVolume"));

if(e)
{
   a =Name();
   fh = fopen( s+".txt", "w");
   if( fh )
   {
   dat = DateNum();
       tim = TimeNum();
   myminute = (60 * Hour()) + Minute();

      for (i = 1; i < BarCount; i++)
      {
      
         
         if (myminute[i]>(myminute[BarCount-1]-min_buffer))
         {
            ds = NumToStr (dat[i], 1.0, False ) + "," + NumToStr(tim[i], 1.0, False) + "," + NumToStr(BidSize[i], 1.2, False) + "," + NumToStr(Bid[i], 1.0, False) + "," + NumToStr(Ask[i], 1.2,False) + "," + NumToStr(asksize[i], 1.2, False) +","+ NumToStr(Last[i], 1.2, False) +","+ NumToStr(Lastsize[i], 1.2, False) +" \n";
            fputs( ds, fh );
         }
      }
      fclose(fh);
   }
}
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Пн Ноя 21, 2011 11:12 pm Ответить с цитатой Вернуться к началу

Подожди до среды, сильно облегчу это дело...

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
max



Зарегистрирован: 01.08.2008
Сообщения: 253

СообщениеДобавлено: Вт Ноя 22, 2011 9:13 am Ответить с цитатой Вернуться к началу

000 писал(а):
Подожди до среды, сильно облегчу это дело...


ок конечно подожду
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Вт Ноя 22, 2011 12:32 pm Ответить с цитатой Вернуться к началу

Типа вот

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
max



Зарегистрирован: 01.08.2008
Сообщения: 253

СообщениеДобавлено: Чт Ноя 24, 2011 9:52 am Ответить с цитатой Вернуться к началу

000 писал(а):
Типа вот


Спасибо.

Но не понял как записать, чтобы в файл ежесекундно дописывалась строка не с одним параметром, а несколькими: типа вот
AddColumn(BidSize,"BidSize");
AddColumn(Bid,"Bid");
AddColumn(AskSize,"AskSize");
AddColumn(Ask,"Ask");
AddColumn(LastSize,"LastSize");
AddColumn(Last,"Last");

ЗЫ - хостинг слегка забашлял Smile ибо сайт стоит десятка других трейдунских сайтов
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Чт Ноя 24, 2011 12:15 pm Ответить с цитатой Вернуться к началу

Код:
String = NumToString(BidSize) + NumToString(Bid) + NumToString(AskSize) + ... ;
AS_WRITE_FILE("ИМЯ ФАЙЛА", String);


ЗЫ. Спасибо Smile

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen