Dec, 14 2010
The SDK is updated to support all new features of the upcoming Trading Station release.
New features:
What’s new in indicator interface in the upcoming Trading Station
release.
What's new:
1) New table mathex.
All the statistical functions (min, max, sum, stdev and so on) are
moved to the mathex table from the core table. The backward
compatibility is supported, but using of this functions from core
table is deprecated for all new indicators.
A lot of new statistical functions, including linear regression,
linear regression slope and correlation are added to the mathex table.
2) findDate function now is implemented in the core
The function finds the index of the bar by it’s date/time. The
function works in O(log2N) time, where N is a number of bars in the
stream.
3) New indicator and strategies are added to the standard set of the Trading Station:
Indicators:
SMMA(Smoothed Moving Average)
VIDYA(Chande’s Variable Index Dynamic Average)
WMA(Wilders Moving Average)
AC(Acceleration/Deceleration)
Alligator
AO(Awesome Oscillator)
Gator Oscillator
AD(Accumulation/Distribution)
CHO(Chaikin Oscillator)
CMF(Chaikin Money Flow)
OBV(On Balance Volume)
CMO(Chande Momentum oscillator)
The indicator “Show time to end” which displays the time remaining to the closing of the current candle.
Strategies/signals:
Divergence on MACD Signals
Bill Williams Fractal-Alligator System
Classic MACD sample
Margin alert signal
4) Line and text output color can now be specified using the method
output_stream:setColor(period, color) and text_output:set(…) for each
bar individually.
The line color also affects all the groups: channels, from/to bar and
candles. The color of the first stream in the group is used to draw
the group. Please note that in case the color is specified at least
for one bar for the stream in the group, then the color must be
specified for all the bars.
For streams which aren’t included into the group, the default color
(the color specified when the stream is created) is used in case the
color of a bar is not specified.
5) Line stream can be broken.
You can set break of the line using setBreak method of the
output_stream. If break flag is specified, the line which connects
this and previous bar will not be drawn. This flag, applied to a bar
in the first stream of the channel group also affects channels groups
drawing.
6) The indicator or strategy now can get all the information about
output_stream of indicators created in this indicator (see the
output_stream table documentation).
7) A new host:execute(“setStatus”) method is added.
This method sets the additional label displayed right to the indicator
label. See the new standard showtimetoend indicator for demonstrating
this feature
8) nameOnly parameter is documented for Prepare() function of
strategies and indicators.
The nameOnly parameter is true when the indicator or strategy is
initialized in order to create the name only. The implementation must
avoid performing any actions except creating the name (call
instance:name()) in case this parameter is true. The indicator
instance will be surely destroyed right after getting the instance
name in this case.
9) A new host:execute(“isTableReady”) method is added.
The method is useful to check whether the trading table data is
available. The data can be not available when the strategy (or
indicator) are started immediately after the login or when the user
executed the “refresh” command for all or particular table. The
strategies and indicators must always check whether table is ready
before accessing the data.
10) A strategy can also use host:execute(“addCommand”) now. The
commands (up to two commands) will be shown as buttons in the alert
dialog and AsyncOperationFinished() will be called in case the user
clicked on that buttons.
11) A strategy can stop itself using host:execute(“stop”) method.
12) ELS orders are supported.
ELS (entry limit/stop orders) can be used in the strategies.
ELS order is a pair of the entry stop and entry limit order which can
be attached to entry or market order.
These orders:
a) Becomes active only when the position is created by the “root”
(main) order.
b) In case the amount of the root order is changed, the amount of the
attached orders is changed as well.
c) When one of these orders is executed, the second order is
cancelled.
d) The orders never creates the opposite position, only closes the
existing position.
e) When there is no more positions/instrument in the opposite
direction, the orders are cancelled.
f) The orders can be pegged orders.
So, in short, these orders behave very close to the regular stop/limit
orders with two exceptions:
a) When the position is created and then partially closed, the amount
of the orders is not changed.
b) When the condition is met, these orders closes the oldest of the
existing positions, not the position they are created for.
Please download beta SDK here:
http://fxcodebase.com/bin/121710/IndicoreSDK.exePlease download the beta version of the trading station here:
http://fxcodebase.com/bin/121710/FXTS2InstallDev.EXE