Автор |
Сообщение |
indus
Зарегистрирован: 23.12.2009
Сообщения: 27
|
В этом условии почемуто видит подглядывание, при подсоединении транслятора в квик, если исследовать само условие то говорит It seems that the formula does not reference future quotes.
This is good. Почему так, гдето действительно ошибка в коде?
p1b=p1a*10/ADX(p2a);
Verh=Ref(HHV(H,p1a),-1);
Niz=Ref(LLV(L,p1a),-1);
Verh1=Ref(HHV(H,p1b),-1);
Niz1=Ref(LLV(L,p1b),-1);
Buy=H>=Verh AND BuyPrice>(1 + Width * 0.01) * CenterLine AND C>Ref(MA(C,n),-1);
BuyPrice=Verh ;
Sell=L<=Niz1;
SellPrice=Niz1;
Short=Sell;
Cover=Buy; |
_________________ Дорогу осилит идущий... |
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
В том куске который приведен подглядывания нет.
Только я не понял, кто там ругается? Какой транслятор? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
indus
Зарегистрирован: 23.12.2009
Сообщения: 27
|
Вот энту штуку я транслятором зову. Олег а вот вопрос, возможно ли при достаточных ресурсах железа сделать робота по фьючам на тиках и какие индюки там возможно использовать, у тебя есть такой опыт?
_SECTION_BEGIN("экспортКВИКшаблон");
///// TradeBot v.1.1. Последние изменения 6.12.2004 /////
///////// Установки аккаунта ///////////
TickerID=Param("TICKERID",1,0,100,1); // уникальный для каждого индикатора номер
Ticker=ParamStr("TICKER","РОСНЕФТЬ"); // название бумаги в Амиброкере. На другой бумаге работать не будет
TimeFrame=Param("TIMEFRAME",1,0,100,1); // таймфрейм в минутах. На других таймфреймах работать не будет
Classcode=ParamStr("Classcode","EQNL"); // код класса бумаги
Seccode=ParamStr("Код бумаги в квике","ROSN"); // код бумаги
Account=ParamStr("Номер счета","ап"); // ваш аккаунт на бирже
Client=ParamStr("Код Клиента",""); // код клиента
Lots=Param("количество лотов",1,0,10000,1);; // сколько лотов желаете торговать
FileName=ParamStr("Путь","E:/РЫНОК/TREID/toquik.tri"); // слэши прямые!!! имя файла с транзакциями для квика
Otstup=Param("Оступ",1.5,0,10,0.01); // в процентах. заявка будет выставлена хуже текущей цены на столько процентов
Point=Param("Кол-ва знаков",0,0,100,1,0); // количество знаков после запятой в цене
Okr = Param("Округление до",1,1,10,1);
//////// !!!!СЮДА РУКАМИ НЕ ЛАЗИТЬ!!!! /////////
////////////////////////////////////////////////
procedure savetrifile(stransid,sstr) {
f=fopen(FileName,"r");
found=0;
if (f) {
while (!feof(f)) {
s=fgets(f);
if (StrFind(s,stransid)>0) {
found=1;
}
}
fclose(f);
}
if (found==0) {
f=fopen(FileName,"a");
if (f) {
fputs(sstr+"\n",f);
fclose(f);
}
}
}
function makeandsave(sOper,sOperID,sprice) {
CCS="";
if (Client!="") { CCS=" CLIENT_CODE="+Client+";"; }
transid=StrFormat("TRANS_ID=%g%g%g%g;",TickerID,sOperID,LastValue(Ref(DayOfYear(),-1)),LastValue(Ref(TimeNum(),-1)));
str=StrFormat(transid+"PRICE=%1."+Point+"f;QUANTITY=%g;OPERATION="+sOper+";CLASSCODE="+Classcode+"; ACTION=NEW_ORDER; TYPE=L; SECCODE="+Seccode+"; ACCOUNT="+Account+";"+CCS,sprice,Lots);
savetrifile(transid,str);
}
if ((Now(3)==LastValue(DateNum()))AND(BarCount>1)AND(Name()==Ticker)AND(TimeFrame==Interval()/60)AND((Buy[BarCount-1]==1)OR(Sell[BarCount-1]==1)OR(Short[BarCount-1]==1)OR(Cover[BarCount-1]==1))) {
ifbuy=IIf(Buy[BarCount-1]==1,1,0);
ifsell=IIf(Sell[BarCount-1]==1,1,0);
ifshort=IIf(Short[BarCount-1]==1,1,0);
ifcover=IIf(Cover[BarCount-1]==1,1,0);
if (ifbuy) {
price1=(1+Otstup/100)*Close[BarCount-1];
Okr1=10^Okr;
price2=price1/Okr1;
price3=round(price2);
price=price3*Okr1;
makeandsave("B",1,price);
}
if (ifsell) {
price1=(1-Otstup/100)*Close[BarCount-1];
Okr1=10^Okr;
price2=price1/Okr1;
price3=round(price2);
price=price3*Okr1;
makeandsave("S",2,price);
}
if (ifshort) {
price1=(1-Otstup/100)*Close[BarCount-1];
Okr1=10^Okr;
price2=price1/Okr1;
price3=round(price2);
price=price3*Okr1;
makeandsave("S",3,price);
}
if (ifcover) {
price1=(1+Otstup/100)*Close[BarCount-1];
Okr1=10^Okr;
price2=price1/Okr1;
price3=round(price2);
price=price3*Okr1;
makeandsave("B",4,price);
}
}
//// mehanizator (c) 2004, http://www.russian-trader.ru
_SECTION_END(); |
_________________ Дорогу осилит идущий... |
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
На тиках конечно можно. Только я никогда не делал. Поэтому не подскажу. На сильно мелких фреймах много схавает скользяк и коммишн. Поэтому там надо тщательно...
По поводу транслятора. А каким макаром он ругается на подглядывание? Это "робот" Механизатора. Он должен работать как индикатор, а индикаторы на подглядывание Ами не проверяет....
Или В AFL editor проверял и там ругается? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
indus
Зарегистрирован: 23.12.2009
Сообщения: 27
|
Ну да в тестере, я пользуюсь переведенным , там где восклицательный знак есть пункт пометить. Спасибо я вроде разобрался, использовал формулу цены в конце формулы, чтобы она при сделке меняла цвет графика, изза энтого, на торговлю это не влияло.
Plot( C, "Close", IIf(LastValue(Buy OR Sell OR Short OR Cover)>0,32,1), styleNoTitle | ParamStyle("Style") | GetPriceStyle() ); |
_________________ Дорогу осилит идущий... |
|
Посмотреть профиль Отправить личное сообщение |
|
|
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
|