Блог им. roman01

Программа для учета сделок TradeJournal

Здравствуйте, коллеги! Публикую свою программу для учета сделок и отбора рынковhttps://yadi.sk/d/HDEyTEWDH-BroQ
Добрый день, уважаемые коллеги инвесторы. Я пишу программу по учету сделок и отбору акций (пока в ручном режиме), хотел поделится своей работой, так как считаю, что она кой-кому может быть полезна.

Сразу (с ходу) ответственно заявляю:
1. не хочу составлять конкуренцию крутым и платным приложениям вроде PirateTrade или MaxProfit
2. программа (если она вас заинтересует) — была, есть и останется бесплатной.
3. Обязуюсь опубликовать исходные коды, как только «причешу» ее до нормального состояния
4. не надо кричать — чувак, купи прогу (вставить имя) — она круче в сто раз и не парься — просто пройдите мимо… спасибо! Разрабатываю, значит есть причины...

например, если вы крутой трейдер, оперируете 6-значными суммами, торгуете на разных рынках — конечно, нужен серьезный софт, что тут скажешь
но, если суммы по меньше, начинаешь задумываться — что траты на софт сопоставимы с расходами на брокера. Тут уж хочется сэкономить…

Так же следует учесть:
1. не ждите крутого интерфейса
2. не ждите слишком большой универсальности — писал для себя и под свою стратегию торговли
3. она для акций

Что меня побудило разработать и выложить ее в сеть:
самое главное — я стабилизировал базу данных, это значит, что теперь я буду вносить изменения в программу, но не в базу

торговал я как и сотни или тысячи трейдеров, вел журнал в Excel, а торговый дневник — в cherrytree, но в определенный момент времени excel стал меня (как бы это сказать?) задалбливать, что ли. То есть, все в теории вроде бы есть — но это неудобно, это работает не так как хотелось бы ...
Хотя это и понятно — все таки он не для хранения реляционных данных.

в общем, решил я написать свое...

Определил требования, построил модель.
В частности, мне нужно:
1. отбирать акции для разных задач — инвестирования, трейдинга, а так же под разные торговые системы или стратегии
2. вести учет сделок
3. уведомления, если цена достигает определенного значения
4. что бы было удобно работать с картинками

Да, кстати — рисовать в программе пока нельзя — только загружать /выгружать (из файла, буфера обмена)

На данный момент я уже перетащил больную часть журнала сделок и своего дневника, процентов 60, наверно. Ну, нормальный объем базы данных… много картинок, текста, в общем хороший объем базы получается.

Пишу на Лазарусе. Почему его выбрал? Выбор был труден, поплевался я от паскаля всласть, конечно!
Давным давно, лет 10-15 назад я активно программировал на Delphi. С тех пор уже давно на нем ничего не писал, так как работаю с другими технологиями и языками.

И первоначально писать я хотел на C#, писать на котором одно удовольствие, если бы не одно НО — нет кросплатформенности. То что на Моно — спасибо, но нет...

На любимом мною python — да, но хотелось скомпилированное приложение, не тащить PyQt

В общем, решил делать на Lazarus.

Да, кстати, база данных на SQLite. Никаких закрытых форматов — легко загружать данные, выгружать и.т.д

И еще — в комплекте идет база demo — это просто пример — НЕ БОЛЕЕ

Важно! Я торгую по стратегии, основанной на рейтингах, но тут, думаю, это не проблема для тех, кто будет ее применять...

Ответственно заявляю — никаких скрытых функций: рекламы, майнинга криптовалюты :)



Итак, теперь само описание:

Вот так выглядит окно отбора акций:
Программа для учета сделок TradeJournal

Вот так — учет сделок
Программа для учета сделок TradeJournal



Есть фильтры по различным критериям.

И еще — писал в короткие свободные мгновения! Это не коммерческий продукт, ту есть над чем работать и что улучшать. Это не конечный, готовый продукт!

Как я уже писал — публикую, потому, что не предполагаю менять структуру базы и обновляться будет только сама программа (оболочка).

Графиков пока не будет. Причина проста — проще выгрузить данные в Excel и построить какие надо графики — у меня сейчас так.
Да и нужны они постольку поскольку — так, полюбоваться что-ли. Для реального учета графиков, как мне кажется и не нужно!

Над чем буду работать в ближайшее время:
1. исправление ошибок — это самое главное
2. доведу до ума учет сделок: с расчетом рисков и.т.д (что у меня сейчас в экселе)
3. статистика по счету — этого реально не хватает


В общем, качайте, смотрите
Предложения (в разумных пределах) на почту [email protected]

Как быть, если вдруг кого то воодушевит моя работа и он решит помочь (чем леший не шутит — материально), денег ни с кого я вымогать не буду! И если вы считаете, что я двигаюсь в нужном направлении, то на странице about — мой яндекс-кошелек.

Благодарю всех за внимание!

С уважением, Роман
★30
11 комментариев
Как загрузить данные из QUIK:
1. в дистрибутиве есть инсталяционные пакеты sqlite odbc. установите тот, который подходит для вашей системы (вроде нужен 32-bit) — c:\Windows\SysWOW64\odbcad32.exe

2. далее создайте в odbc новый источник с базой данных TradeJournal (которю вы создадите)

3. в настройках odbc-источника установите галку NO WCHAR



4. в quik настройте обмен по odbc: выберите таблицу export
и сопоставьте поля


Все, теперь можно выгружать данные, а для переноса их в базу выберите в программе Сервис — Импорт — Данные из таблицы обмена
avatar
а как автоимпорт из tws сделать?
avatar
ну, вообще то данную платформу я не использую.
А вообще: она умеет выгружать в CSV? Можно через него сделать.

avatar
Коллеги, прошу прощения за безграмотность: писал с телефона. Будет время — приведу пост в соответствие с нормами русского языка

avatar
Роман, это прекрасно. Даже если прога мне не подойдет, и пользоваться не буду, то сам факт того, что САМИ сели и сделали, да еще и с коллегами поделились. Честь и хвала. Уважаю.
Знаешь в чём беда работы над ошибками? В том, что разбирание неверных сделок не гарантирует того, что ты сможешь выйти за рамки определённой концепции принятия решений. Можно 5 лет разбирать ошибки, но так и не понять как же именно торговать-то надо. Нет, серьёзно, задумайся с чего ты вообще взял, что эта идея здесь сработает? Если кто-то так сказал, это не значит, что он прав.
Работа над ошибками работает когда есть вариант с которым можно сравнить. Ты например сел писать диктант. Написал текст потом сверил с правильным и исправил ошибки. А с чем ты будешь сравнивать ошибки в своём дневнике трейдера? Ты просто будешь переваривать неверное восприятие рынка, которое может так и не перейти в правильное.
К сожалению, терпение и труд не всё перетрут. Особенно это касается биржи.
Уважаемый Дмитрий, простите, но бредятина какая-то…
avatar
Коллеги, доброго времени суток! Исправил несколько ошибок в программе, прошу качать...

Ошибки были в журнале сделок, в работе с картинками по невнимательности...

Благодарю Евгения за теплые слова — очень приятно! Дмитрий — прошу прощения за мои слова, погорячился, с кем не бывает.

Кстати, не очень я люблю категорические рассуждения, но все же скажу: мое мнение заключается в том, что сделки, записи, журнаты трейдерские и.т.д  — все должно оставаться личным и только личным.
Как сказал А.Элдер: сделка это очень интимное — только ты и она...

По этому, я очень против сервисов, которые организовывают трейдерские дневники. Ну, конечно, бывают исключения в виде публичных личностей или тех, которые привлекают инвестиции — тут, да.

Мне же, как обычному работяге — инвестору очень важно, что бы никакая информация не утекла «налево».
avatar
Доброго времени, уважаемые коллеги!

Я внес некоторые изменения в программу TradeJournal.
К сожалению, мне все-таки пришлось изменить структуру базы данных.

В чем суть: в разделе «Портфель» у меня была возможность хранить только 2 картинки, что, как мне кажется, мало, так как я в своем дневнике храню их 4:
  — 2 при открытии (старший и рабочий таймфрейм)
  — 2 при закрытии (старший и рабочий таймфрейм)

В общем, в таблицу orders я добавил еще два поля (тип VARCHAR) — image3 и image4


Чуть позже выложу конвертер формата 1.0 в 1.1
Если хотите, то можете с помощью, например, программы SQLiteStudio (бесплатная) внести изменения сами.

Спасибо Вам за проявленный интерес!

Сделал так же новую ссылку — yadi.sk/d/dxARhi1DVUmW_Q
avatar
Коллеги, здравствуйте! За выходные поработал над программой и после версии 1.1.0 (которая ломала совместимость с 1.0) выпустил версию 1.1.1.

Исправил ошибки, внес изменения в интерфейс, в общем, дорабатываю...
Ссылка  — yadi.sk/d/dxARhi1DVUmW_Q

Спасибо Вам за проявленный интерес!

С уважением, Роман
avatar
Коллеги, здравствуйте! Обновил программу до версии 1.2.0. Совместимость не нарушена.
Ссылка та же: yadi.sk/d/dxARhi1DVUmW_Q

Предлагаю в программу добавить возможность вести дневник. Правда, тогда нужно будет внести изменения в базу данных.
Как Вы на это смотрите?

С уважением, Роман
avatar

теги блога Роман

....все тэги



UPDONW
Новый дизайн