1. Для online получения в AmiBroker данных о котировках необходимо использовать библиотеку AlfaDirectDataFeed.dll
forex.kbpauk.ru/download.php?Number=310821
2. Скрипт лучше запускать не через индикатор, а через Auto-Analysis (через исследователя Explore). Через индикатор система перестает работать, если свернуть Amibroker.
3. Для автоматического восстановления связи AlfaDirect (при непроизвольных отключениях) в скрипте можно указать:
AD = CreateStaticObject(«ADLite.AlfaDirect»);
AD.UserName = «логин»;
AD.Password = «пароль»;
AD.Connected = True;
4. С таблицами и запросами AlfaDirect можно работать напрямую из AmiBroker (кроме выставления заявки, см. п.5):
Pos = AD.GetLocalDBData(«sum_balance», «forword_rest», "(p_code =" + тикер + ")")); — получения данных о позициях по определенному тикеру
5. Выставлять заявки необходимо через встроенный скрипт VBS. Напрямую выставить заявки не получится, потому в AmiBroker и AlfaDirect не соответствуют значения Null:
EnableScript(«vbscript»);
<%
Dim AD
Set AD = CreateObject(«ADLite.AlfaDirect»)
function Order()
vbordernum=AD.CreateLimitOrder (счет, площадка, тикер, дата, комментарий, «RUR», купит/продать, лоты, цена, Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, 0)
Order=Right(vbordernum,8)
End function
%>
script = GetScriptObject();
OrderNum = script.Order();
6. Полезные сайты
amisite.ru,
forex.kbpauk.ru