Этот проект представляет собой обобщение моего опыта работы в качестве разработчика и руководителя группы в различных финансовых учреждениях (банках и брокерах FOREX) и индивидуальных трейдерах. Я сделал приложение максимально простым для использования с такой сложной вещью, как финансы.
Программа подойдет любому.
Используя это приложение, можно расти во всех трех направлениях: при постоянном использовании можно стать лучшим и умным потребителем/торговцем, затем лучшим трейдером и, наконец, мудрым инвестором. Эти экраны будут показывать и отслеживать во времени вашу производительность и личные отношения с финансами, годовое состояние капитала и показатели доходов/расходов за день/месяц.
Эта версия бесплатна, но если вам нужна более качественная и безопасная версия, вы можете написать мне на [email protected], мы обсудим улучшения/установку/поддержку и договоримся о долларах.
Приложение. Перейдите в папку FinCore/ClientApp. Выполните: npm install
Для запуска отладки пользовательского интерфейса: : npm run start
и используйте URL-адрес http://127.0.0.1:4200 для запуска отладочной версии пользовательского интерфейса.
Сборка всего приложения. Для сборки в качестве службы Windows или консольного приложения: Запустите из командной строки: build.bat
Для сборки в виде образа Docker: Запустите: docker.sh
Если вам не удалось выполнить сборку или вы не хотите выполнять сборку на своем компьютере, есть возможность получить образ докера из моего концентратора докеров. Запустите эти команды:
git clone https://github.com/sergiovision/FinCore.git
docker pull dockersergio/fincore:latest
docker-compose up
Чтобы сборка прошла успешно, необходимо установить следующие приложения: Visual Studio 2019, инструменты сборки Visual Studio 2019, последнюю версию NPM с http://nodejs.org. Для правильной работы сервера необходимо установить приложения:
База данных SQLite, расположенная в папке /DB
. По умолчанию используется файл базы данных SQLite, но также поддерживается MySQL, вы можете переключиться на MySQL в файле /FinCore/appSettings.json
.
Для настройки ключей Api криптомодуля для провайдеров KuCoin и/или FTX:
Для обмена KuCoin установите следующие свойства в /FinCore/appSettings.json
: KuCoinAPIKey
— основной ключ API KuCoin KuCoinAPISecret
— секрет API KuCoinPassPhrase
— Pass Phrase
KuCoinFutureAPIKey
— API-ключ KuCoin Futures KuCoinFutureAPISecret
— API-секрет KuCoinFuturePassPhrase
— Фьючерсная фраза Pass
Для биржи FTX: FTXAPIKey
— ключ API FTX FTXAPISecret
— секрет API FTX
Откройте файл fincore_empty.sqlite
в любом редакторе БД, работающем с SQLite (например, Navicat).
Откройте экран настроек и установите следующие переменные
XTrade.TerminalUser
- должно быть установлено имя пользователя Windows, где будут работать торговые терминалы.
XTrade.InstallDir
— папка установки XTrade.
Metatrader.CommonFiles
- путь к папке с общими файлами MT5.
MQL.Sources
— путь к папке MQL, в которой хранятся ваши MQL-роботы.
Чтобы установить приложение в режиме службы Windows, создайте проект под Windows, перейдите в папку bin и выполните команду (с правами администратора): FinCore.exe install
Если у вас возникли проблемы с работой, проверьте FinCore.MainServer.log
, чтобы увидеть ошибки.
Структура папок FinCore:
/BusinessLogic — основная логика приложения.
/BusinessObjects — общие бизнес-объекты.
/FinCore — главный хост сервера и контроллеры WebAPI.
/ClientApp — клиентское приложение Angular.
/MQL5 — исполняемые файлы MQL5, которые необходимо установить в Metatrader для синхронизации и работы с Metatrader.
О ФинКоре
Панель управления в реальном времени
Книга кошельков
Интеграция с Метатрейдером
Управление несколькими терминалами/брокерами и советниками
Управление метасимволами
Курсы валют в реальном времени
Торговая статистика и управление рисками
История сделок
Журналы приложений
Инвестиционный пирог
Фоновые задания
Эффективность доходов/расходов в день/месяц
Ежегодная столица государства
При запуске приложения оно становится доступным по этой ссылке: http://localhost:2020/#/login или http://localhost:2020/#/dashboard.
Порт Websockets использует порт 2021
. Убедитесь, что порты 2020
и 2021
открыты, чтобы сделать FinCore доступным за пределами VPS. Если вы запускаете приложение в докере на отдельный адрес, чтобы подключить его к Windows, где находятся терминалы Metatrader - вам следует активировать переадресацию портов в Windows:
Запустите эту команду в командной строке Windows:
netsh interface portproxy add v4tov4 listenport=2020 listenaddress=127.0.0.1 connectport=2020 connectaddress='docker container address'
netsh interface portproxy add v4tov4 listenport=2022 listenaddress=127.0.0.1 connectport=2022 connectaddress='docker container address'
После этого все специалисты Metatrader смогут синхронизироваться с приложением FinCore, работающим в Docker или на другом компьютере/ОС.
Чтобы предоставить доступ к приложению Fincore через веб-сервер NGINX, добавьте следующий текст в файл nginx.conf в разделе server { }: `location ^~ /fincore/ {
proxy_pass http://127.0.0.1:2020/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}`
Логин по умолчанию для файла fincore_empty:
почта: [email protected]
пароль: test
Книга кошельков
Панель управления в реальном времени
Панель инструментов показывает текущие позиции и эффективность инвестиций в режиме реального времени. Использовался высокопроизводительный механизм, управляемый веб-сокетами, для обновления инструментов в реальном времени.Настройки
Добавление советника в Метатрейдер
Чтобы добавить советника на график, просто щелкните правой кнопкой мыши и выберите «Шаблон цели». FinCore сделает все остальное.Настройки Метатрейдера
Советник взаимодействует с сервером приложений через WebAPI.Советник
Советник имеет панель в левом верхнем углу графика. Настройки советника можно редактировать на этом экране Управление советникамиУправление несколькими терминалами/брокерами и советниками
Ежегодная столица государства
Резюме Столичного государства за годТорговая статистика и управление рисками
Полезный экран для трейдера/инвестора. Здесь вы можете увидеть, какие инструменты работают лучше, и выбрать любимые для своей следующей сделки/инвестиции.Инвестиционный пирог
Наблюдайте за своим инвестиционным портфелем на этом экране.Журналы приложений
Красочная регистрация со всех торговых терминалов в одном журнале. Нет необходимости открывать каждый журнал терминала.Эффективность доходов/расходов в день/месяц
Этот очень полезный экран показывает, как вы зарабатываете/тратите деньги в жизни и на рынке.История сделок
История завершенных/закрытых сделок.Фоновые задания
Просмотр и контроль вакансий. Здесь можно вызвать различные дежурные вакансии. Расписание заданий реализовано с использованием библиотеки Quartz и настроено с помощью выражений cron в БД.Управление метасимволами
Чтобы добавить новый символ в FinCore, добавьте новый метасимвол, а затем добавьте новый символ на этом экране. Затем для этого символа можно создать советник.Курсы валют в реальном времени
Чтобы обновить курсы валют, откройте и подключите свой терминал Metatrader к Fincore и запустите ExhangeRatesJob в фоновых заданиях.