или надо код показать?
Олег!Про робот панду. Немного пессимизма.1) робот создал 30% ликвидности рынка фортс. Играл на опционах и фьючерсах с плечами больше 10.2) робот относится к классу HFT роботов ( стоимость таких роботов в долларах от пяти нулей после 1) Это фактически маркет-мейкер.3) робот работал на прямом канале к бирже4) робот на ATF - это велосипед, панда - это феррари Цена и скорость соответственноНу вот примерно так
Во!!!, точно у меня велосипед , когда кручу педали прибыль идет, как только отпускаю, сразу убытки
Quote from: nxz on Июня 20, 2011, 03:33:17 pmВо!!!, точно у меня велосипед , когда кручу педали прибыль идет, как только отпускаю, сразу убытки Пересаживайтесь на Мерседес!
адресочек не подскажете, где он припаркован
Quote from: nxz on Июня 20, 2011, 03:33:17 pmадресочек не подскажете, где он припаркован Может быть Вам ещё и ключ от квартиры, где деньги лежат?
Quote from: nxz on Июня 20, 2011, 03:25:27 pmили надо код показать? Ни в коем случае Все скопируют, начнут выигрывать и ФОРТС обанкротится
#samewindow#line 0 solid green#line 1 solid red extern lot = 1; // Первоначальное количество лотовextern tp = 3; // Вершина фракталаstatic knl; // Каналstatic stz; // Статус заявкиstatic lotz; // Количество лотов в заявкеstatic pr; // Цена сделкиstatic op; // Направление последней сделкиstatic st; // Статус наличия заявкиstatic atz; // Статус автозапускаstatic nr; // Новый режим (возврат в канал)var hi; // Верхняя граница каналаvar lo; // Нижняя граница каналаvar x; // Хэш заявокvar y; // Хэш сделокvar file;var order;function init() { setInitCandles(tp+tp-1); x = new_object("hash"); y = new_object("hash"); order = new_object("hash"); file = new_object("file");}function onATFStopOrder(var id) { x = getStopOrder(id); stz = x["status"]; // Запоминаем статус заявки// signal::notify("Заявка № " + x["trnid"] + " статус " + x["status"]);}function onATFTrade(var id) { y = getTrade(id); op = y["operation"]; // Запоминаем направление сделки pr = y["price"]; // Запоминаем цену сделки signal::notify("Сделка " + y["operation"] + " по цене " + y["price"] + ". Контрактов = " + (getBought() - getSold())); file.wopen("data.txt"); // Запись файла параметров file.seek(0); file.writeLn(st); file.writeLn(stz); file.writeLn(lotz); file.writeLn(op); file.writeLn(pr); file.close();}function onHistoryCalculated() { file.ropen("data.txt"); file.seek(0); st = file.readLn()*(-1); stz = file.readLn()*1; lotz = file.readLn()*1; op = file.readLn()*1; pr = file.readLn()*1; file.close(); signal::notify("ЧИТАЕМ ФАЙЛ! st = " + st + " op = " + op + " pr = " + pr);}function fMyTrade (var oper, var kol, var cena) { signal::notify("Заявка "+ oper + kol + " контракта по " + cena); order["tp_quantity"] = kol; order["operation"] = oper; order["tp_level"] = 1; order["tp_activationprice"] = cena; trade_action::transact(order);}function calc() { if (high[-tp] > high[-tp+1,-1] and high[-tp] > high[-tp-tp+1,-tp-1]) { hi=high[-tp]; } line[0] = hi; if (low[-tp] < low[-tp+1,-1] and low[-tp] < low[-tp-tp+1,-tp-1]) { lo=low[-tp]; } line[1] = lo; if ((hi-lo) > 1 and close >= lo and close <= hi) {knl = 1;} else {knl = 0;} / var K = fmod(abs((getBought() - getSold()))/lot,2); var N = int(K); var M; if (fmod((getBought() - getSold())/lot,2) == 1) {M = 1;} else {M = 0;} lotz = lot*((K+1)+M*(1-K)+ 2*N*(M-1)); if (fmod((getBought() - getSold())/lot,2) == 0) {atz = 1;} else {atz = 0;} signal::output(" Время = " + getFormattedTime(getServerTime()) + " Канал = " + knl); signal::output("Автозапуск = " + atz + " Текущая заявка = " + st); signal::output("Контрактов = " + (getBought() - getSold()) + " Последняя сделка = " + op);// Автостарт if (st != 2 and atz == 1 and knl == 1 and isTradingAllowed() == true) { signal::notify("АВТОЗАПУСК! Снимаем все заявки"); stz = 0; lotz = 0; op = 0; pr = 0; // Обнуляем исходные данные trade_action::cancelAllOrders(); fMyTrade (OP_BUY, lot, lo); fMyTrade (OP_SELL, lot, hi); st = 2; atz = 0;} if (op == -1 and stz == SS_TP_EXECUTED and st != 1 and knl == 1) { trade_action::cancelBuyOrders(); fMyTrade (OP_BUY, lot, lo); st = 1; atz = 0; nr = 0;} if (hi-pr <= lot*3 and pr != 0 and st == -1 and op == 1) { signal::notify("ПРОБОЙ ВНИЗ 2! Снимаем заявки на продажу"); trade_action::cancelSellOrders(); st = 1; nr = -1;} if (nr == -1 and hi-pr > lot*3 and pr != 0) { signal::notify("Возврат ВВЕРХ! Снимаем заявки на покупку"); trade_action::cancelBuyOrders(); st = -1; atz = 0; nr = 0;} if (op == 1 and stz == SS_TP_EXECUTED and st != -1 and knl == 1) { trade_action::cancelSellOrders(); fMyTrade (OP_SELL, lot, hi); st = -1; atz = 0; nr = 0;} if (pr-lo <= lot*3 and pr != 0 and st == 1 and op == -1) { signal::notify("ПРОБОЙ ВВЕРХ 2! Снимаем заявки на покупку"); trade_action::cancelBuyOrders(); st = -1; nr = 1;} if (nr == 1 and pr-lo > lot*3 and pr != 0) { signal::notify("Возврат ВНИЗ! Снимаем заявки на продажу"); trade_action::cancelSellOrders(); st = 1; atz = 0; nr = 0;}}function onNewCandle() { if (st == 1 and line[1][-1] != lo) { trade_action::cancelBuyOrders(); signal::notify("ИЗМЕНЯЕМ " + lotz + " лота на покупку с " + line[1][-1] + " на " + lo); fMyTrade (OP_BUY, lot, lo);} if (st == -1 and line[0][-1] != hi) { trade_action::cancelSellOrders(); signal::notify("ИЗМЕНЯЕМ " + lotz + " лота на продажу с " + line[0][-1] + " на " + hi); fMyTrade (OP_SELL, lot, hi);}}
Ну я же пошутил!
Этого робота я отправил на пенсию (он отработал с 11 января по 22 июня 2011). Сегодня начал использовать новый "высокочастотный" скрипт http://www.transaq.ru/forum/index.php?topic=525.msg2954#msg2954
Quote from: nxz on Июня 27, 2011, 08:05:10 pmЭтого робота я отправил на пенсию (он отработал с 11 января по 22 июня 2011). Сегодня начал использовать новый "высокочастотный" скрипт http://www.transaq.ru/forum/index.php?topic=525.msg2954#msg2954И Вы хотите, чтобы коллега обменял своего живого чудо-брокера на пенсионера-робота?
ну на Вас не угодишь то крылья мешают, то пуговицы перламутовые подавай
Неее.... второго робота не покажу "Корову свою не продам никому - Такая скотина нужна самому!"
з\ы\ по тестам он за 3 часа сделал 400 трейдов и все в плюсе , самому страшно его запускать