Автор |
Сообщение |
eugenserg
Зарегистрирован: 08.10.2013
Сообщения: 84
|
С появлением Qlua в Quik, появилась идея передавать таблицы квика через скрипт Qlua. Первое, что приходит на ум - из Qlua просто писать таблиц на диск, из ами - их читать. Но! жалко SSD на буке))). Идея вторая - создать виртуальный диск в системе, и писать на него. Но при этом нужно отследить изменения и перезаписывать только в случае изменения. Если кто-то знаком с Lua, такой вариант в принципе возможен? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Gluhov
Зарегистрирован: 06.02.2009
Сообщения: 44
|
кешь диска без проблем все обработает как надо |
|
|
Посмотреть профиль Отправить личное сообщение |
|
eugenserg
Зарегистрирован: 08.10.2013
Сообщения: 84
|
Gluhov писал(а): |
кешь диска без проблем все обработает как надо |
Спасибо. Уже есть рабочие скрипты. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
avorio
Зарегистрирован: 12.12.2009
Сообщения: 1
|
Идея очень интересная. Есть какие-то новости по разработке? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
eugenserg
Зарегистрирован: 08.10.2013
Сообщения: 84
|
avorio писал(а): |
Идея очень интересная. Есть какие-то новости по разработке? |
Новости есть. Есть рабочий скрипт Qlua с названием LuaSharp,передающий таблицы через AmiSharp в AmiBroker. Но проект это не мой. Я лишь пользуюсь этими продуктами для своего робота на AFL |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Zoringer
Зарегистрирован: 19.05.2015
Сообщения: 21
|
В продолжение темы:
Для передачи сигнала из амиброкера в робот Луа на график просто кидаем свою стратегию с добавленным скриптом (ниже), который записывает эталонный сигнал, робот Луа читает этот файл и если позиция по эталону отличается от фактической то луа сам выставляет заявку и следит за ее исполнением.
Проблема в том что на удаленном сервере спустя какое-то время он перестает записывать этот эталонный тхт файл. Стоит войти на сервер и сразу сигнал пишется. Кто-нибудь сталкивался с этим?
Код: |
trans_id=ParamStr("Trans_id","103");
filename=ParamStr("filepathname","C:\\AFL_DATA\\afl_data"+trans_id+.txt";
function Write_Log(Str,filename)
{
Local f;
if (filename != "")
if (f = fopen(filename,"w"))
{
fputs(Str,f);
fclose(f);
}
else {_Trace(Str);
_Trace("Ошибка записи в лог-файл " + filename);
}
Return Str;
}
function str1()
{
local str;
str="";
for (k=1;k<=n_papers;k++)
{
str+=",'"+Operation+"'"+","+"'"+Amount+"'"+","+"'"Name_+"'"+";
}
return str;
}
file_data="{"+str1()+"}";
if (ParamToggle("Save file", "No|Yes", 1)==1)
{
Write_Log(file_data,filename);
}
|
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
|