Pi
- インディケータ
- Vasja Vrunc
- バージョン: 2.8
- アップデート済み: 30 5月 2020
- アクティベーション: 10
Professional Prediction Indicator
Based on matching the history with selected pattern model and shows the most likely outcome.
Pi
indicator includes Pattern line, Scanned_Past line, Matching_Pattern line, Future_Predicted
line, adjustable Model Band, and some other controls.
This indicator is designed primarily for professional use and is
very useful in the search for the probability of the results relating to the future.
Note: The results depend on model_band and past_bars. They are approximate, and therefore they must be compared with multiple timeframes.
Program is design to operate in 2 automatic modes:
1. Slider mode
Turns on when attaching the indicator to the Chart or Visual Tester.2. Expert mode
Here you can test/set your settings back in history with “slider” up to 32767 bars.
So, while Visual Testing EA, you can attach the indicator and easily adjust input parameters for critical points.
On Tester (only) you can exit "Slider mode" by pressing the <Esc> key.
You can easily switch between time frames on the selected position and compare the results.
Turns on when starting the indicator with "iCustom" function.
It is designed only for EA use and “slider history testing” is disabled.
It is tested and works very well in our EA "PointerX".
Please watch “testing” in HD … https://youtu.be/z1AfjBWIuhQ
We recommend running more instances of the indicator on different timeframes simultaneously for better results (M15, H1, H4) and optimization criteria every two months.
For programmers
The known command to retrieve a line index value for MQL4:
double piCurr=iCustom(NULL,TF_,"Pi",BAND_,FB_,SMOOTH_,0,PB_,3,cnt);
where:
NULL = current symbol
TF_ = enum_timeframes
"Pi" = path/name of the custom indicator compiled program
BAND_ = model band (int)
FB_ = future bars (int)
SMOOTH_ = line smoothness (int)
0 = last bar (int)
PB_ = past bars (int)
3 = line index (int)
cnt = shift (int)
TF_ = enum_timeframes
"Pi" = path/name of the custom indicator compiled program
BAND_ = model band (int)
FB_ = future bars (int)
SMOOTH_ = line smoothness (int)
0 = last bar (int)
PB_ = past bars (int)
3 = line index (int)
cnt = shift (int)
Other buffers: 0=Pattern, 1=Scanned_Past, 2=Matching_Pattern
You can use this code as an example:
// Function declaration - Define PI Indicator (Example) void definePI(...) { buyPI_=false; sellPI_=false; RefreshRates(); const double tpBUY=NormalizeDouble(Ask+tpBuyL_,_Digits); const double tpSELL=NormalizeDouble(Bid-tpSellL_,_Digits); const double slBUY=NormalizeDouble(Bid-slBuyL_,_Digits); const double slSELL=NormalizeDouble(Ask+slSellL_,_Digits); // [Here put some Error test code ...] // then ... if(err_!=0) return; bool END_BUY=false; bool END_SELL=false; for(short cnt=0;cnt>=-FB_;cnt--) { double piCurr=EMPTY_VALUE; piCurr=iCustom(NULL,TF_,"Pi",BAND_,FB_,SMOOTH_,0,PB_,3,cnt); ResetLastError(); if(piCurr==EMPTY_VALUE) {f_err_=true; buyPI_=false; sellPI_=false; Print(__FUNCTION__,"Pi=EMPTY_VALUE"); return;} const double pi_bid=piCurr; const double pi_ask=piCurr+spreadPnts_; if(UseSL_) { if(pi_bid<=slBUY) END_BUY=true; if(pi_ask>=slSELL) END_SELL=true; } if(pi_bid>=tpBUY&&!END_BUY) {buyPI_=true; break;} if(pi_ask<=tpSELL&&!END_SELL) {sellPI_=true; break;} } return; }
Pi input parameters settings
The order from left to right is: name, [default value], min-max value.If you accidentally enter a lower or higher value, the min-max value is used.
- ModelBand [130] 2-1000 - pattern line model width (in current bars)
- FutureBars [300] 0-600 - bars for calculation to the furure (to the right)
- Smooth [0] 0-100 - line smoothness
- LastBar [0] 0-6000 - last bar for calculation (0 is current)
- PastBars [1000] 0-6000 - bars for calculation in the past (to the left)
Additional information
The demo version is built to demonstrate the main features and usability of Pi, PiDemo.If you like to use Pi unlimited or within an EA, you have to buy or rent this product.
Are you satisfied with our work? Share your experiences and leave a comment.
If you need help using our trading tools or you have an issue or question, please contact me.
VLabs