Requirements Trading Terminal Platform independent: build with Qt for KDE (qtdesigner, python, C++) It should be really easy and intuitive to use (drag and drop etc). The program will not only be centered about a price action chart. Besides traditional price action it will also contain an analytical view of a trade (mainly for displaying a trade that includes options) Data providers An API should be created for the the data connection and the processing of orders (should be separate). The plugins should be created for: Interactive Brokers Dukascopy Fix Demo/test trading account import data (csv format etc) Data The data should be stored locally (server/database part?) so scans can be made Indicator API The indicators of TA-Lib (http://ta-lib.org) should be used. An API should be created/integrated so these indicators (and others created similarly) can be used. It would be nice to be able to use these in different languages. extra indicators that have to be created based on this api: elliot wave numbers alligator accelerator awesome accilerator (java available) FIE (python available) Fibonacci price & time (also linked to elliott wave) Graphs Be able to draw lines and text on chart (to draw trendlines and add notes etc) configure what to display of the trades on the chart on a chart basis Linked graphs (when you change underlyer of one graph the linked graphs change accordingly) Presets: you have a template and you create presets for them: for example setting
1: graph1: eur.usd 1min graph2: eur.usd 40 min these presets are stored. When you save it you can determine which changes should be global (to all displaying this) and which only local and which should be temporary. Flexible bars (candlesticks) The length of each bar should be flexible. (So not just 1 minute, 5 minutes etc. but be able to flexible set the length). The end date/time of the bar should be flexible. You should be able to set in to a specific time (for example the five minute bar should end an 0.00 or at 0.02 or it should end in the now (thich means it continuesly updates every bar). Simple calculation of price levels, price differences and nr off bars etc. For example draw a box around a group of bars and in a window should appear the relevant information (nr off bars, start bar, end bar, duration, open price, close price, high, low, diff open-close, diff high low). Also a mode that would calculate the values between 2 bars. Analysis sharing Be able to export a graph (svg). Real time publishing/viewing/updating of graph. Working simultaniously on a graph/trade. Accounts Select if the application should control the account for 100%. If so then all the orders in the account should be represented somewhere in the program. If not it is out of sync and you should be able to manually adjust the errors. Dynamic date Symbols On certain location it should be possible to add symbols of which the date automatically gets updated (so you will for example always display the futures of a specific underlyer for next month. When they expire they will automatically show the next month) drawing There should be multiple drawing levels (layers) and it should be possible to set defaults to the drawing and have presets.
Strategy/Trade It should be possible to compare trades. (for charts this can be done by displaying other linetypes for each trade (off course one could also display the 2 graphs in different windows). It should be very easy to see if a trade can be improved by showing this optionally in the graph (next expiry, strike etc). When working on a trade there could be several modes, for example change mode replace/change a certain leg with another, displaying both on the chart to see the difference add mode, display the differenc with and without the extra leg. Comparing trades should be very easy (for example just drag and drop the trades onto the chartwindow). It should also be possible to only display part of a trade of compare specific parts of a trade (maybe using layers). This is convenient when for example comparing the legs of a calendar spread. Homescreen The homescreen should be totally customizable. It should consist of building blocks that can contain different kind of content. For example account info, indices, a chart or the result of specific scans. trader dashboard/trade plan Show a dashboard with relevant information of the current strategy. This means: resistance and support levels elliot wave numbers relevant news (based on this and relative items) relative markets (link, graph) important dates (dividend, announcements, rapports etc) trade entry and exist strategy description of market situation (with date) These should also be shown on the chart if applicable(optionally) Some of these items shoud be general (for exampe a general announcement like Non-Farm payroll or unemployment rate) An API should be added so this data can be included automatically (for example by loading a remote calendar) Delta trader / Option analytics Display a table of the available options and futures chains (see figure oas.png) and be able to buy the directly from the table or add them to see what would happen to the graph
Illustration 1: oas.png It should also be possible to transfer all the changes as an order of a 'test/changed' graph, so the test graph become the real graph. The graph. Display combinations of the greeks, return (on different times) etc. Sould be possible to analyse multiple tradesekb in one graph.
The system should propose trades that would improve the position
Position Overview of the position with current and optional changes (fig Scans Create scans that will return a list of options/stocks that match specified criteria. For example: stock rangings (Show % highest gainers, losers, etc) cheap, expensive options volatility skew
channel finder (find stocks that have been trading in a channel) Trade scans Search for trades available column items: underlyer trade legs stockprice cost max profit max risk delta days to expiration open interest max profit / risk upside break even downside break even % to double other greeks Options volatility rankings (relative to own history this year): expensive cheap quiet explosive Alerts It should be possible to set alerts based on different criteria. This can be in several situations,for example initiate a trade, spot an opportunity or to close a trade. customizable All default settings should be customizable. Also it should be as easy and quick as
possible to select your items. (maybe by autocompletion or by creating customizable default lists) depending on the variable Backtesting Be able to set the date that is used as current date in all data so the program will use historical data. You would be able to then press play (of which you can set speed) to start time to progress. You could step to a later time by yourself (scrollbar?). Android App This should be added later so the system should be build with this in mind. Resources http://quantlib.org/ http://www.openforexplatform.com/ http://www.marketcetera.org http://itrade.sourceforge.net http://www.interactivebrokers.com/php/apiusersguide/apiguide.htm http://www.dukascopy.com/swiss/english/forex/jforex/library/ Examples For an online example of optionscurves see http://www.theoptionslab.com/ For a tutorial of a general online scan tool for options see http://www.optionetics.com/demo/platinumexpress/start_flash.asp (you could also sign up for a free 14 trial to check exact functionality)