PPO Indicator Improvement

İş tamamlandı

Tamamlanma süresi: 10 gün

Şartname

I would like to improve my previous indicator (Percentage Price Oscillator).


Because the existing version got too many bug, so i will directly give you the formula and you can make the improvement as mention below.


    ====================================================================================


    Abnormal candlestick size measurement

    Use Price increment as source of the data.

    Source code: (https://www.mql5.com/ru/code/18896)

    The origanl equation is to calculate the price difference between current close price and previous close price. I want to make slight change 



    3 new changable mode of calculation (only show 1 mode type at a time - changable in setting)

    1. Current open to high low
      1. When close > oprn (bull candle) = high - open (Show +ve histogram)
      2. When close < open (bear candle) = low - open (Show -ve histogram)
      3. When close = open (doji candle) = Reference to prevous candle. (If is bull, then it consider this candle as bull = +ve histogram)
    2. ATR period = (1) / High to low of current candle
      1. Bull candle = ATR (1) +ve histogram
      2. Bear candle = ATR (1) - ve histogram
      3. Doiji = Reference to prevous candle. (If is bull, then it consider this candle as bull = +ve histogram)
    3. Current high or low to a moving average
      1. Moving aveage = EMA (2), Price Typical, shift 0
      2. Above MA = High to MA distance (+ve histogram)
      3. Below MA = Low to MA distance (-ve historgram)


    Colour settings

    +ve histogram = DarkGreen

    -ve histogram = Maroon

    Histogram size = 2


    Peak capturing algorithm

    Here I want to use 3 changable mode to capture abnormality (only show 1 mode type at a time - changable in setting)

    1. Standard diaviation (SD) band on the data above
      1. Mean Period = 400
      2. Standard deviation (Seperate up and down as I need adjustment later, but this is the default)
        1. Up = 2.0
        2. Down = 2.0
      3. I want to filter outlier in the standard deviation and mean calculation
        1. Setting: Filter outlier = True
        2. Any value outside +- 2.698 SD is consider as outlier
        3. Approach = ignore it as part of meand and SD calculation
          1. Eg. 400 data initially, 5 discovered to be larger than +-2.698 SD
          2. 400-5 = 395 (only 395 data will take to count mean and SD)
          3. The 395 mean and SD will plotted in the 1 bar before current bar data
      4. It is a rolling standard deviation and mean calculation, but it will not count on the current candle before it close
        1. Hence current bar SD and mean just copy from previous
    2. Based on time zone
      1. 3 major timezone (in 24 hour format)
        1. Tokyo = 00 - 08
        2. London = 08 - 13
        3. New York = 13 - 22
        4. Note: No overlap. Is from hour = 00 to hour < 08 and so on
        5. 22 to 00 will be the last final one. ( Please check 22 to the next 01 in case day light saving changed this will no occur any problem)
      2. Calculate the mean data within this time zone for the past (400 sample size)
        1. For example London = 08-13. The indicator scan all the way back to past 400 history within 08-13 hours to find out the mean value.
        2. Then SD (using the same 2 up and 2 down SD setting as above) is calculted around the mean and each indicator data
      3. Similarly, current mean and SD will not calculate but copy forward from the last bar
      4. Note: must robust usable in forex and non-forex market
    3. Based on reset timeframe 
      1. Same as VWAP reset time = Daily, week, month, quater, year
      2. Mean line is just normal average with respect to the indicator data
      3. SD based on mean to the indicator data with 2.0 SD on top and bottom (follow the SD settings on 1)
      4. No need button, just allow to set the reset Time on the settings
      5. A verticle line in the indicator is drawn to show the place where it reset the time

    When the indicator is outside of the standard deviation band, a (white) dot will be marked on the indicator as well as the price chart.

    Note: Some time the market is new to the broker and only have limited number of candle. In backtesting as well, the max candles i believe is 999. Hence in case insufficient data, it will take whatever posible

    Note: When current price break toward outside of SD bands, an alert (Option = ) will 1.  pop out, or just 2.  play sound with textin the expert tab, or 3.  just in the expert tab or 4.  totally do nothing (Default = OFF).


    Save the data

    1. Can store the value into excel for further analysis.
      1. Having the setting to export the data out and store in CSV. The indicator value for the past  500 candles will be first store. The CSV will continue append the latest data every new data. The required data are:

        1. Symbol
        2. Broker time
        3. Local Time
        4. High price
        5. Low price
        6. Close price
        7. Indicator calculated data
        8. Mean
        9. Standard deviation
        10. Outside SD? (TRUE/FALSE)

    When the  export setting is true, create a "Debugging" Yellow text at the top right of the chart so I know the CSV is collecting.

    The file name is following the format: custom_name ( Default=PI_Indi) + Indicator calc mode+ broker short name + symbol + date (year.month.day)


    Expected input in the settings

    Indicator settings--------------------------

    Calculation mode

    1. Open to High Low
    2. Current ATR
    3. Moving Average to High Low

    MA type = EMA

    MA period = 2

    Price = Typical

    Peak capture settings--------------------------

    Peak capture mode

    1. Standard deviation (SD - rolling)
    2. Time zone
    3. Timeframe reset period

    Standard deviation settings--------------------------

    Mean period = 400

    SD up = 2.0

    SD down = 2.0

    Filter outlier = true

    Outlier SD = 2.698

    Time zone settings--------------------------

    Time zone 1 = 00

    Time zone 2 = 08

    Time zone 3 = 13

    Time zone 4 = 22

    Timeframe settings--------------------------

    Timeframe = Daily / Weekly / Monthly / Quaterly/ Yearly

    Custom Design settings--------------------------

    Dot -- ??? Anything?

    Export settings--------------------------

    Export = False


    Note: A 0 level line is needed.

    Note: The indicator must able to run in backtesting

    Source code is needed by the end of the project.


    ===================================================================================================


    Things that I want to improve

    1. Adaptive Peak Capture algorithm
      1. I need an algorithm that can automatically detect if the current price is a spikes (abnormality) or not. See the Picture below, the one that been circled is the peak that I want to capture


      2. I do not want reprint result.
      3. I do not want static value (NOT ABOVE/BELOW XX NUMBER). I want the algorithm able to capture that peak robustly. Because the indicator value can some time range big some time small. So the algorithm have to adapt to the indicator value.
      4. When measured to have a peak, highlight it with rectangular object.
        1. At TOP = clrMaroon
        2. At Bottom = clrDarkGreen
        3. Draw a vertical Grey Line at the peak (Default = true)

    2. Can use for EA as custom indicator with fast calculation
      1. The current problem is after the EA done using it strategy tester, when I open the chart the indicator will not print the value. Hence, I would like to have the indicator to always display all the result (just like MACD). See the example below, the past PPO indicator is missing when I open the chart, while conventional indicator like stochastic still there.


      2. The past version always take too much computational resource from me and slow down my Backtesting speed. Please keep the indicator calculation optimum by only update the latest candlestick only when there is new tick price. AGAIN, I DONT WANT THE PEAK ALGORITHM TO RECALCULATE AGAIN (NO REPRINT).

    3. Can use at any market which include (forex, gold, WTI, SnP500)
      1. I would like to standardise the value displayed by this indicator. Currently, forex pair will give very small number, Gold will give 100X larger number than forex. This give me intuitively hard to understand.
      2. I want to standardise the value into standard deviation, SD away from ZERO
        1. Sample size = 400 (INPUT). 
          1. Put a vertical grey line at 400th candle so that I know where is the sample size stop.
          2. I can adjust the vertical line (dragging left or right) to change the sample size
        2. So the max and min is +-3 and the indicator value will oscillate around 0 (mean indicator value). 
        3. Put level label for 0, 1, 2, 3 for easier visualisation.
      3. Put a histogram at the right side of the indicator window to ease my visualisation. Have setting so i can adjust the size of histogram box.
      4. However, the previous SD calculation is very slow. Some user who dont have enough data will not able to use it. 
        1. Hence make it auto adjust, If the user don't have enough XX amount of sample use whatever available.
        2. If ( Display Histogram == True) display a histogram at the right side of the indicator window. So when I scroll my chart left to right, the histogram will still there.
          1. Bin size = 0.1
          2. Min Max = +- 3
      5. I want to test run the speed. Other than PPO calculation. We use ATR with period of 1 to replace the PPO value. 
        1. If close >= open (bull candle) ATR value is +ve
        2. If close < open (bull candle) ATR value is -ve
        3. Standard deviation calculation will all same as PPO above.
      6. I f you have any better idea that can speed up the calculation while giving similar intuitive  visualisation, I will choose you.

    4. Can store the value into excel for further analysis.
      1. Having the setting to export the data out and store in CSV. The indicator value for the past   YY (default = 10) days will be first store. The CSV will continue append the latest data every 30sec (Default & changeable) The required data are:

        1. Symbol
        2. Broker time
        3. Local Time
        4. High price
        5. Low price
        6. Close price
        7. PPO / ATR
        8. Standard deviation of (7)
        9. Peak? (TRUE/FALSE)

    When the export setting is true, create a "Debugging" Yellow text at the top right of the chart so I know the CSV is collecting.

    The file name is following the format: custom_name ( Default=PPOIndi) + PPO/ATR + broker short name + symbol + date (year.month.day)


    Summary

    1. Make PPO and ATR (changeable setting) indicator value
    2. Standardise the value by calculating the  standard deviation, SD away from ZERO
    3. Display the histogram at the right of the indicator window. Having vertical line for me to drag left and right to change the sample size.
    4. Adaptive peak capturing
    5. Test if it can use for EA and still display result in backtester
    6. Allow the indicator values to export data out in CSV.


    Highly welcome developer that is communicative and experience in MQL indicator. Please communicate with me on your experience so I know if you are suitable in working with this project or not.

    I am open for discussion to make this indicator.

    Source code is needed by the end of the project.



































































































































































































































































    Yanıtlandı

    1
    Geliştirici 1
    Derecelendirme
    (115)
    Projeler
    129
    18%
    Arabuluculuk
    11
    27% / 55%
    Süresi dolmuş
    4
    3%
    Serbest
    2
    Geliştirici 2
    Derecelendirme
    (71)
    Projeler
    97
    43%
    Arabuluculuk
    2
    50% / 0%
    Süresi dolmuş
    2
    2%
    Serbest
    3
    Geliştirici 3
    Derecelendirme
    (45)
    Projeler
    91
    13%
    Arabuluculuk
    34
    26% / 59%
    Süresi dolmuş
    37
    41%
    Serbest
    Benzer siparişler
    Title: Simple background trading bot for my Oanda account (v20 REST API) Overview Hi, I need a simple, lightweight event based standalone trading bot that connects directly to my Oanda account using broker’s standard REST API (V20 account) via VPS The bot just needs to look at group of 5 currency pairs (manually selectable and adjustable) in different 4 baskets, do some basic percentage math every period, and place
    Gold hunter v5 30+ USD
    *TITLE:* 5 Trades EA - EMA20/50 + RSI - Safe for Small Account *SPECIFICATION:* I need MT5 EA - Source Code .mq5 *Logic:* Buy: EMA20 > EMA50 and RSI(14) 45-70 Sell: EMA20 < EMA50 and RSI(14) 30-55 Timeframe M15, Symbol XAUUSD and all Forex *Trade Management:* Max 5 trades at same time. Fixed lot 0.01. No martingale. No lot increase. Distance between trades 150 points. Do not open all 5 at same price. Max 5 total
    I need an Expert Advisor (EA) developed for MetaTrader 5 (MT5) tailored for trading on Exness accounts. Account & Server Details: Trading Platform: MetaTrader 5 (MT5) Broker: Exness Execution Type: Market / Pending Orders Account Type: [Specify: Standard / Pro / Raw Spread / Zero] Target Instruments: [Specify pairs, e.g., XAUUSD, EURUSD, BTCUSD] Strategy Requirements: Entry Rules: [Insert your buy/sell entry
    Account size 50$ to 100$ or 5000USC to 10000USC ( Account $ Size may not matter ) Max Leverage 1000-2000 Min Lot 0.01 [ if averaging possible ] Averaging + Shift TP Faster Required if Trend Direction is Clear Account Protection Maxx Profit Max Loss Key Based Activation News Filter Need Expert to handle this to avoid false entry [ Developer can suggest extra additional filters inputs here ] as i mentioned I have no
    i need some tradingview strategy that i want to use as a tester, i have something that i am working on currently and i need someone that can provide me with tradingview strategies that doesn't have a win rate, the one with 1:1 RR it need to have low win rate like 10% or 5% profitability, i am not paying $30 for,i dont have up to that for this cause i only want to use it as a test, if anyone have any to send me please
    I am looking for an experienced MQL5 developer who can BOTH research trading strategies and develop a commercial-quality MetaTrader 5 Expert Advisor. This is NOT simply a coding job. The developer is free to choose the trading logic, indicators, entry method, exit method, timeframe architecture and strategy type. I do not require the EA to copy or resemble any existing commercial EA. My priority is: ROBUST LONG-TERM
    Create a bot that can trade and read indicators easy to read for first time users. Bot that can be used on a phone and connect to MT5. It should be easy to install or use on any device especially phone and laptop, preferably the bot that can run over night and controllable when needed
    I DO NOT need any programming or strategy development. I already have a working NinjaTrader 8 automated strategy based on a 3/5 EMA crossover. I need you to run my existing strategy through NinjaTrader Strategy Analyzer/Optimizer, test the existing adjustable parameters, and find robust settings with the best profit factor and lowest reasonable drawdown. I will provide the existing NinjaScript ZIP. I do not want the
    I am looking to acquire an EXISTING and PROVEN MetaTrader 5 Expert Advisor. I am NOT looking for someone to develop a random new strategy from scratch. The objective is to find a robust EA with an existing track record, verify its performance and robustness, and purchase the MQL5 source code together with clearly defined commercial rights. MAIN REQUIREMENTS The EA should meet most or all of the following
    Looking to acquire an existing, proven EA. Not looking for new strategy development. REQUIREMENTS — non-negotiable: Minimum 12 months verified LIVE history (Myfxbook or MQL5 Signals, real money — not demo, not backtest) Hard stop loss on EVERY trade, set at order placement NO martingale, NO grid, NO averaging into losers, NO lot multiplication after a loss Max historical drawdown under 30% Minimum 5 trades per

    Proje bilgisi

    Bütçe
    50 - 100 USD
    Son teslim tarihi
    from 3 to 10 gün