Premia Pro • halext.org labs

Trading Client for Stocks and Cryptocurrency

Language Dependencies Build Method Repository
Core --- --- --- ---
Pro C++ Boost, SDL2, ImGui gcc Source
Mobile Swift iOS-Charts LLVM Source
Web --- --- --- ---

About the Project

The goal of Premia is to provide an advanced experience for investors and traders to manage their portfolios. Currently, Premia exists as a desktop application that communicates with brokerage and exchange APIs such as TDAmeritrade and Coinbase Pro to display price history charts, portfolio data, watchlists, and other information.

Going forward, I plan on breaking up the existing application into a series of microservices, as to support multiple clients such as phone app or a web interface. This will open the door for a more dynamic user experience based on connecting directly to a server to get data.

Users will be able to link existing accounts they have with other financial services that we're capable of supporting via APIs and their portfolio information will be organized and presented to them in the application. They'll have the ability to look at the performance of their assets with a variety of portfolio measurements.

Premia will also provide advanced models based on financial data to help investors and traders make decisions based on a broader array of information available to them. Some experiments could include:

Premia Pro

The desktop application will have a focus on advanced charting with speed and efficiency. The analytical models will also have their most detailed graphical representation as opposed to the mobile and web versions. Users will be able to use a console to control aspects of the program with more freedom, as well as plans to provide a scripting language for increased versatility. The goal is to allow the user to make Premia more useful for themselves than we can.
This makes customization a huge design philosophy for Premia.

Premia Mobile

The mobile app for Premia will have a focus on consistent engagement by taking advantage of the Core engines user database as means of faciliating some social connections. This can be in the form of user profiles with options of displaying investments and their performance or even a chat room where people can share their trades live. This will tie well into the integration with other brokerages, if a user makes a purchase they can easily share it from the Premia mobile app with a more aesthetically appealing image export option.

Premia Web

The web interface will likely be the most reliable place to go in terms of managing a users account and the status of their subscription and payment method, but its performance as a valid client for charting will be subjective to the ability of any potential developers hired onto the project in the future.

Microservice Transition

To improve the efficiency of Premia and to allow for multiple client endpoints, I plan on transitioning it into a microservice architecture. The transition to a microservice architecture will take place over three phases as follows.

Phase 1: Incubation

Basics of the Core server program will be set up.
Core includes the analytical models and user database.
Mobile app and web interface are linked to the API gateway of the server.
Basic API requests are linked to GUI of the mobile and web.
Testing IEXCloud Sandbox before subscribing for Premium Data

Phase 2: Transformation

User features like registration, login, connection status
WebSocket streaming for real time quotes and cached databases of frequently accessed data
API Microserives as Daemons on the Core server with their own databases
Subscribing to IEXCloud Individual for Premium Data
Pro desktop application features expanded significantly based on Premium Data
Core Models developed based on Quantitative Finance and Statistical Market Analysis

Phase 3: Ascension

More advanced server scaling techniques
Moving API microservices onto their own servers
Splitting up the Core engine into multiple servers
Upgrading to IEXCloud Business for more features

Somewhere between phase 2 and phase 3, Premia will start taking the form of a product that can be offered to early investors and beta testers. This is where the basis of the subscription model will begin to take shape, which I will explain further below.

Subscription Model

Many features in Premia will be offered to users for free, such as the charting and the portfolio tools. However, built into Premia will be the ability for users to subscribe on a monthly basis for access to premium data and technical analysis of that data. This will be done by using the service IEXCloud for market data.

Using Premia with the Premium Data will allows users to have a convenient place for all the information they need and introduce them to potentially beneficial analytical models based on that data designed by the developers. Beyond just premium data, the subscription will provide access to more features within the program like additional technical indicators for their charts and access to more algorithmic trading models.

The value proposition built into the subscription model will be directly proportional with the quality of the financial analysis made available by the developers, which is why concepts like risk management, performance backtesting, probability and statistics will all be used heavily in any intellectual works provided in the application.

In the early stages of the subscription model, pricing will be based primarily on the cost of the data and the server as well as factoring in labor costs from myself and any other developers involved in the project. As time progresses and the project expands in detail, that pricing model will be subject to adjustments based on the value proposition provided by the software at that time.

Developers Needed

The current vision for Premia is quite amibitious and I can no longer feasibly accomplish it alone.
For this reason I'm looking for developers willing to assist in the following tasks.

Most of these tasks can be accomplished in whatever language you see fit, as long as it can fit into the microservices ecosystem. Preferably something like C, C++, Python, or Java. But, if you can link it up to the Core server API then do whatever you want really.

Given that Premia is still in the earliest stages of development, the only formal compensation I can offer at this time is guaranteed access to all of Premia's features free of charge as a Founder. More detailed means of compensation will be worked out for any Founders before the project transitions into offering paid services and will be contigent on specific business goals being met first.

Screenshots