Просмотр сообщений
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Messages - alexejshevchenko
1
« on: 06.05.2014, 13:07:18 »
alexejshevchenko я честно почитал но так и не воткнул с чего начать а точнее как Производить контроль и передачу данных в Transaq Connector через что) не подскажешь?
Ты с++ или с# хорошо знаешь? На сайте Финама есть пример. Можешь скачать и разобраться. Запросы передаются с помощью команд, которые сам составляешь, асинхронные ответы приходят, их перехватывает событие и там уже сам делаешь что нужно с ними.
2
« on: 05.05.2014, 10:16:31 »
Я на Transaq Connector сейчас пишу. Руки полностью развязаны - можно делать всё на что фантазии хватит ))) ну и умения конечно...
3
« on: 05.05.2014, 10:14:35 »
А логин/пароль от терминала транзак подходят для транзак коннектор?
Раз такие дела....
Нет. Обратись в офис Финам, чтобы открыли доступ
4
« on: 29.04.2014, 09:10:42 »
Heller если не секрет а можете раскрыть тайну в чем все таки загвоздка..) просто если я вынесу все в Длл и смогу это все сделать раньше чем вы исправите компилятор не останится ли ошибка? Стоит на этом замарачиваться?
А как ты всё в дллку вынесешь? Можно вычисления только. Но надо же получать структуры сделок, заявок, стопов и т.д. А это из длл не сделаешь...
5
« on: 21.04.2014, 09:12:36 »
У каждого свой путь. Уверен Вы добьетесь успеха, хотя на мой взгляд, изучение четвертой версии Wealth-lab, не лучший вариант. Лучше тогда уж с шестой или с Math-lab начинать. Я посмотрел ваши сообщения на форуме, и сделал вывод, что Вы всерьез хотите изучить ATF. Настойчивость ваша в обучении вызывает уважение, но думаю возможности этого языка Вас в конечном итоге разочаруют. Присмотритесь к C# или языку Math-lab. Если интересно, то могу посоветовать литературу, касающуюся трейдинга на этих языках (но правда на английском).
Полностью с Вами согласен. Убил столько времени на робота на ATF. Он работает, но чтобы этого добиться - надо было около месяца за ним следить и сейчас уже 22 версия. Для другой стратегии вообще не получилось сделать, т.к. память жрёт неумолимо. Так что советую не заморачиваться на ATF, а писать сразу на C# для коннектора.
6
« on: 18.04.2014, 10:39:54 »
Если писать на C++/С#, то не понятно тогда почему не подходит Transaq Connector. Как вариант из ATF можно вызывать функции внешних dll, которые уже могут быть написаны на чём угодно.
Он то подходит! только не хочется писать интерфейс для отображения графиков, если это уже всё есть в транзаке. А правильность сделок надо же отслеживать?! Насчёт дополнительного логина - с финамом недели 2-3 общался насчёт этого. Всё равно так и не сделали, чтобы можно было и из транзака и из коннектора к одному счёту одновременно подключаться. Перешёл на TsLab. Но не нравится что там при подаче заявок ограничения стоят ( например нельзя поставить защитное время для стопа). И логика работы роботы странная - надо на каждом тике подтверждать заявку, а то она снимется... Но очень хороший тестер. Насчёт вызова внешних dll - а смысл? что можно сделать в dll такого особенного, чего нельзя в ATF? Если б можно было из библиотеки получать списки сделок, заявок и т.д - то было бы оправданно использование. А так ATF сам всё получает и если их много, то виснет.
7
« on: 08.04.2014, 15:01:09 »
Я уже делал глобальные static переменные. Конечно можно и так сделать. Но надо же ошибки ATF исправлять ))
8
« on: 08.04.2014, 14:17:04 »
Я не использую IndRef. В скрипте просчитывается свой индикатор и выводится на график. Мне кажется дело не в этом... Сегодня на демо счёте тестировал новую стратегию на 4 бумагах. Функция getActiveOrderIDs() не работает, т.е. при активной отложенной заявке возвращает 0. Поэтому у меня на каждом тике проверяется наличие заявки:
var ids = getAllOrderIDs(); var z_id; while(ids.size()>0){ z_id=ids.shift(); var z=getOrder(z_id); if(z["secid"]!=ins["secid"]){continue;} if(z["status"]==OS_WATCHING || z["status"]==OS_FORWARDING || z["status"]==OS_ACTIVE){ return; } }
Всё работает нормально, память уходит медленно, но я допустил ошибку и у меня выставилось по несколько сотен заявок сразу по 4 бумагам, т.е. в сумме около 1000 заявок. Я их сразу же удалил, исправил и память стала улетать десятками Мб в секунду.
Я уже вынес все переменные в глобальную область видимости, но всё равно. Такое ощущение, что переменная при каждом проходе цикла записывается в новую ячейку памяти.
9
« on: 07.04.2014, 10:12:25 »
Уважаемый Heller, проверьте, пожалуйста, последнюю сборку.
Приложил скрины. На них видно, что за 2 минуты "скушало" 10 Мб. Сборка 5.08.336.24 rev 55. Мне ОЧЕНЬ нужно чтобы данный робот работал. Вы понимаете, что с этим связаны деньги. Если нужна какая-то помощь - Вы только скажите. Я знаю что язык ATF поддерживается только разработчиками, но на нём всё же работают люди. Так что прошу помочь всем нам ))
10
« on: 04.04.2014, 17:40:41 »
Да, я использую последнюю версию. Но когда в диспечере задач память доходит до 2 Гб, то Transaq вылетает с ошибкой и создаётся файл Crash Report нулевого размера.
11
« on: 04.04.2014, 16:16:46 »
Что-то не понял... Чтобы Connector получал дынные - надо сначала подключиться к серверу. А как это сделать, если мы уже подключены с этим логином через Transaq?
12
« on: 04.04.2014, 11:05:06 »
Здравствуйте.
В ATF много недоработок, которые мешают нормально работе. Существует ли такая возможность вместо ATF писать роботов на C++ или C#, чтобы самому посылать команды и получать структуры, так же как и через Transaq Connector? Я думаю это намного облегчит задачу и нам и Вам.
13
« on: 04.04.2014, 10:55:42 »
что-то не особо радует сборка... на одном компьютере вообще подключение не устанавливается. На другом память так же улетает. за в секунду по несколько Мб.
Вот участок кода из calc() который в этом виновен
var ids = getAllOrderIDs(); var z_id; while (ids.size() > 0) { z_id = ids.shift(); var z = getOrder(z_id); if (z["secid"] != ins["secid"]) { continue; } if (z["status"] == OS_WATCHING) { return;
} }
если его убрать, то всё хорошо
P.S. Методом последовательной итерации было выявлено, что это из-за функции getOrder()
14
« on: 01.04.2014, 15:43:58 »
Большое спасибо, сейчас исправлю.
15
« on: 25.03.2014, 11:55:51 »
Здравствуйте. Примерно каждый 3-й запуск терминал зависает и больше не запускается. Нашёл связь с файлом конфигурации. Если его переименовать, чтобы он по-умолчанию не открылся и загрузить предыдущую версию (default.1), то нормально открывается. В конфигурации 4 графика и на каждом робот. В чём может быть проблема?
|