The following is a brief description of the new features added in the 3.4.3 version of QuantShare. Please let us know in the comments, which feature you would like us to introduce more in a separate post. Trading System Correlation To combine several trading systems, you can open the simulator manager (Analysis -> Simulator Manager), select "Tools" in the tool bar (Click on the "+" icon if you do not see "Tools" there) then "Combine Trading Systems". This was a feature we introduced few versions ago and it is used to backtest different combinations of a set of trading systems. In this new version, we have added a new "Correlation" button at the bottom. This feature allows you to quickly calculate the equity curve correlation of the different trading systems you have selected. It can be very interesting to check initially the correlation between several trading systems, pick the ones that are not highly correlated then backtest their different combinations using the above tool or using the Meta-strategy tool. The reason you want to do this is because of the long time it takes to backtest thousands of trading strategy combinations. Percentage Axis The new percentage axis allows you to display lines and candlesticks in percentage term. You can enable the percentage axis for all panes by clicking on the charts icon at the bottom of your charts then "Set Percentage Scale" If you want to enable it for just one pane, right click on the pane then select "Tools -> Set Percentage Scale" To compare two time-series (to make them have the same starting point), you should set the plot style to "StyleOwnScale". Example: (Right click on the chart then select "Edit Formula") PlotCandleStick("Quotes", colorBrown|255|colorViolet|255|0, StyleSymbolVdash); plot(getseries("SPY", close), "", colorRed, ChartLine, StyleOwnScale); You can also easily compare two assets by clicking on the "Add Indicator" icon at the top/left corner of the chart. Select "External Symbol" tab, choose a symbol, choose whether to display candlestick plot or just a single time-series (Open, high, low or close), make sure "Compare with current symbol" is checked then click on "OK". Create and Modify Live Orders with the Script Tool We have added new functions to create and modify orders after connecting your broker (currently only Interactive Brokers is supported) to QuantShare. Here are some examples: Submit a limit order: Hashtable h = new Hashtable(); h.Add("Limit", 600); // Limit Price DataProvider dp = RT.GetDataConnection("Interactive Brokers"); if(dp != null && dp.IsConnected) { RT.SubmitBuyOrder("Interactive Brokers", "GOOG", 10, "LMT", h, "GTC", false, "Tag", null); // use MKT instead of LMT to send a market order } Submit a limit order then modify it as soon as it is received by the exchange: Hashtable h = new Hashtable(); h.Add("Limit", 600); // Limit Price DataProvider dp = RT.GetDataConnection("Interactive Brokers"); if(dp != null && dp.IsConnected) { RT.SubmitBuyOrder("Interactive Brokers", "GOOG", 10, "LMT", h, "GTC", false, "Tag", status); } App.Main.Sleep(10000); #functions# double val = 10; public void status(object sender, OrderEventArgs e) { OrderEventArgs c = e; if(c.Status == "Submitted") { App.Main.Sleep(1000); Hashtable h = new Hashtable(); h.Add("Limit", val - 1); // Reduce the limit price by one RT.ReplaceOrder(c.RequestID, "Interactive Brokers", "LMT", h); } } Events Monitor The events monitor tool tracks events generated by QuantShare. Events can be tracked and generated in the script tool (Tools -> Script Editor) using the "Global.SubscribeEvent" and "Global.SendEvent" functions. Currently, only few events are supported and we will continue adding and improving this tool in the coming releases. Existing events include: NewTick, NewOrder, Symbol... Each event has some properties or values attached to it. For example, the "Symbol" event has two values: Symbols: List of symbols Type: The event type (SymbolAdded, SymbolRemoved, Drawing...) You can for example create a script to detect any drawing data added to a chart and then interact with QuantShare accordingly. Append Text to the Y-Axis We have also added in this release a new function to append some characters to the Y-Axis values. As an example to append the dollar sign, you can just type the following line in the formula editor (Right click on the chart then select "Edit Formula"): UpdateSettings1("YAxis Text", "$");
|