finantic.Eval
The finantic.Eval extension contains several components:
- The Eval indicator that accepts indicator expressions with arbitrary complexity
- A collection of new building blocks: FxBlocks that allow complex price calculations and conditions.
- A new tool called FxComposer that allows to compose expressions for the Eval indicator and FxBlocks.
Eval indicator
This Indicator accepts an indicator expression of unlimited complexity and calculates the values for such a complex expression.
Example: Indicator of Indicator
Imgine you need an indicator of an indicator like a doubly smoothed version of TR (True Range). You could code:
TR tr = new TR(bars);
EMA ema1 = new EMA(tr, 5);
indi1 = new EMA(ema1, 5);
or with the Eval indicator:
indi2 = new Eval(bars, "EMA(EMA(TR(bars), 5), 5)");
The Eval indicator is also helpful to calculate the various transformations of price series and indictors suggested by Indicator Profiler and Indicator Selection.
FxBlocks
A collection of Building Blocks that accept expressions of arbitrary complexity for prices and conditions. There is an optimizable version of each Block:
- FxBuy and FxBuyOpt: Enter long position
- FxShort and FxShortOpt: Enter short position
- FxSell and FxSellOpt: Exit long position
- FxCover and FxCoverOpt: Exit short position
- FxCondition and FxConditinOpt: Condition Block
These blocks support all available order types (examples: Limit on Open, StopLimit, and so on).
FxComposer
The creation of the required expressions is simplified by a new tool: FxComposer. This tool allows to compose expressions for the Eval indicator or the FxBlocks. FxComposer lets you choose tokens from various lists and compose an expression with these tokens.
Screenshots
Change Log
- Added a collection of new building blocks: FxBuy, FxShort, FxSell, FxCover, FxCondition and their optimizable counterparts.
- FxComposer tool lets you compose expressions for the Eval Indicator and FxBlocks.
- Can now handle expressions like Close-SMA() with no spaces around the minus.
- Fixed a problem with complex expressions like "Close-MP(TR(Bars),100, 75)*0.7".
- Performance improvements, no noticeable difference between Eval() and raw indicators.
- New Indicator EvalOpt: optimizable Eval indicator.
- Complete expressions with addition, subtraction, multiplication and division.
- Internal functions: Max, Min, Abs, Sqrt, Pow, Exp and Log.
- Initial release.