Congratulations, you have win a FREE subscription to our Forex Signal delivered daily right to your mailbox click here!

Daily20pip EA (author mrkam)


forex-robot.gifThe intent of this EA is to implement two specific trade entry strategies of the Daily20pip system and variations found at under “Trader helping traders” Spirit. No Claim is made to it’s accuracy, or it’s proper and correct functioning. You must understand and familiar with D20P system. Have reading the D20P Manual.pdf and Methode to enter the market. You also need to understand the Risk of Forex online trading and How to manage those risk before allowed to use this D20P EA. You have to read this entire manual and know how to operate the EA properly to avoid any mistake, for more information you can join the discussion board about this EA.

Although this EA has been tested on live trading, and the EA author is not liable for any loss or damage, including without limitation, any loss of profit, which may arise directly or indirectly from using this D20P EA. The content on D20P EA is subject to change, update or correction at any time without notice.

Please remember that some investments with very high returns can be very risky, take a look here to learn more about other funding option.

Find the D20P EA Download link at the end of this Manual.


This EA uses only the LevelA entries. NO LevelB entries are used.

IMPORTANT NOTE: All Time setting are GMT. This will need to be reiterated several times, as is critical to proper setup of this EA. You will need to know 1) at what GMT time your broker starts a new daily bar, and 2) what GMT time is London time **, specifically 0600 London time, which is the start of the D20P trade window.

[D30P and DPG (DailyPipGenerator) systems use different calc/filter/entry times, which can found on the respective forum threads.]

** Half the year London IS THE SAME as GMT, during Standard time. Half the year London time is GMT+1, during daylight savings time. This means you will need to adjust your time setting 2X a year, at the time change.

The EA is to be applied to the MT4 GBPUSD 1hr chart.

The “GBPFilter” indicator must be properly installed and applied to the chart in order for the “GBPFilter” entry option to function correctly.

This filter HAS to be the version included in the EA zip file, i.e., “GBP Filter.ex4, no underscrore”, NOT the ‘GBP_Filter.ex4, with underscore.”

Terms: There are several terms used that should be defined:

Mode: The EA has two “modes”: Waiting and Working. “Waiting” means the time is outside of the trading time window, and the EA is inactive. (It will still calculate the next PivotPoint and entry levels at the set times.) “Working” means the EA is a variation of the “Working” mode. It will be reported on the screen as “Trading Starts at: 2.1009” (or whatever level is calculated per the settings.) This functioning will be discussed further bellow.

TradeTime: The window of active trading. This window begins at the GMT SessionStart setting and ends at the GMT SessionEnd setting. Standard Daily20pip strategy is from 0600 London time to 1700 London time.

FilterTime: The GMT time at which the EA will compare the market price to the value of the filter. This is user input, and may or may not be the same as the opening of the tradetime window. (your choice)

Trade Channel: The channel formed by the Buy entry level and the Sell entry level, i.e., PivotPoint+21pips, and PivotPoint-21pips.

Entry Strategies Utilized:

This EA implements the following two D20P entry filter strategies:

- The “Follow the Price” strategy

- The “GBP Filter” strategy

You will need to understand how the Daily20pip system operates regarding the “Point A” entry levels. The EA does not implement any “Point B” strategies.

Following are brief sysnopsis of each. In both case, the PivotPoint is calculated at the start of a new day’s bar. If you want more detail, you can find much on Daily20pip forum and/or the Manual.

Follow the Price:

The EA will determine the TradeType (Buy or Sell), and the Entry Level at the new day in the traditional Daily20pip fashion.

If the market price at trade time is below the Buy level and above the Sell level, the EA will enter an order upon a touch of the determined entry level, buy or sell.

If the price is above the Buy Level, or bellow the Sell point, at trade time, the EA will WAIT for the price to re-enter the channel by given number of pips, as set in the EA inputs (see LevelALogic bellow). (All inputs will reviewed later.) Once that level is hit, the EA ‘activates” the trading once again, and will operate per the above, taking either a Buy or a Sell, whichever was determined at the new day (if it gets hit).

If the price entry level is not touched by the end of the trade window, then no trade is taken, and the EA enters “Waiting” mode, waiting for the next trade time to trade again.

GBP Filter:

This mode REQUIRES that you have the GBP filter.ex4 indicator properly installed and placed on your GBP filter 1 hr chart. (NOTE: it is critical that you use the indicator labeled “GBP Filter.ex4” and NOT “GBP_Filter.ex4”, or else the EA will ALWAYS determine Buys…)

The PivotPoint is calculated as above, at the start of a new day, per the D20P guidelines.

The EA will wait until GMT FilterTime** to compare the GBPfilter value to the market price. If the market price is above the filter, it will BUY at the touch of the Buy level. If the price is bellow the GBPfilter, it will SELL at the touch of the Sell level, if within the TradeTime window. The same logic as above will be implemented of the Price at tradetime is above the Buy, or bellow the Sell entry levels.

** User input. Will review bellow.

User Inputs:

Critical: You MUST check the “Allow DLL imports” and un-check “Confirm DLL imports” boxes on the Common tab of the Input screen. The EA actively retrieves the GMT time, and MUST be able to do so or else the time function WILL NOT FUNCTION. This will be bad for you….

Following are the User Input screens, and the functions of all the inputs:



Lots to trade.

This EA will trade one session per day. If you want to trade more sessions, or use different time setting for a different session, simply apply the EA to another chart, using different MagicNumber, (discussed following.)

StopLoss: Fixed stop loss. A setting of “0” disables this stoploss. The fixed stop DOES incorporate spread, so a setting of 30 will limit your TOTAL loss to 30pips.

StartTrail: Will enable the set TrailingStop once this profit level is hit.

TrailStop: The level at which the TrailingStop will trail. If StartTrail is set at 30, and TrailStop is set at 10, then once the profit hits 30pips, the stop moves to 20p, and trails from there. NOTE: The trailing stop loss does NOT incorporate spread. A TrailStop setting of 10p will actually give you a value of 14p, with a 4p spread.

TakeProfit: self-explanatory

GainForBE: Move the stoploss to this level once GainForBE level reached.

NOTE On the StopLoss Options Above:

There are three options for managing your StopLoss: FixedStop, ThresholdTrailingStop, and BreakEvenStop. These will all work together. The EA will use whichever Stop is CLOSEST, minimizing your loss.
As above, the ACTUAL loss for the TTS would be 14. So, say the price goes straight down. The EA will use the Fixed Stop for a loss of 30pips. But, say the price goes up 30p, then straight down. The TSL will move

Up with the market. Upon the drop, the EA would use the ne TTL of 10p trail, which when hit would result in a TOTAL loss of –14p, (have to add spread with TTL).


The distance at which the Trading Channel is set above and bellow the Pivot Point. Standard Daily20pip amount is 21 pips.


The point at which trading is activated IF the price at GMT StartTime is outside of the channel. This amount is the distance away from the PivotPoint at which the EA enters Working mode. The 18 pip default setting is 3 pips beneath the Buy Entry level, or above the Sell level. The Daily20pip method has considered using 5-10pips.

EXAMPLE: Assuming a SELL trade (see screenshot bellow). Entry level is SellA at 2.0100. Price at tradetime is bellow SellA (in the screenshot, it is actually bellow SellB.) ActivateEntry is 18. Now, say the price rises to hit SellA. The EA will NOT take this trade. The price has to rise to 0103 in for the EA to enter “Working” mode, per the ActivateEntry setting. So, price rises and hits 0103, EA begins working. If the price continues up (which it did, so much so that had the entry been taken at a touch of SellA, the –30p stoploss would have been hit), no Sell entry is taken. If the price drops to 0100 (which it did), a Sell order is taken on the way down (which happened for a +30p profit).

If the market rises to hit the ActivateEntry level of 2.0103, the EA will note this by saying “Trading to Start at: 2.0100”. Once the Market hits 0103, the EA will note this by saying “Trading to Start at: 2.0100”. Once the Market hits 0103, THEN the EA will start trading, looking for atouch of the LevelA entry, 0100.

Here is a screenshot of the ActivateEntry function in action:



The GMT time at which to calculate the PivotPoint. This could be the time of your brokers’ “new day”, but it doesn’t HAVE to be. The EA will look at the previous 24 hourly bars, and determine the Hi/Lo/Close of that time period, and calculate the PivotPoint accordingly. So, you have the option of setting whatever 24 hour period you want. This may come into play if you use an alternate method (MPE or Hal), or you could adjust to match someone else’s broker’s data….

Ignore 2300 bar:

Allows you to ignore the 2300 bar on Friday. (matches NorthFinance charts to the FXDD charts.) A setting of “0” disables this feature.

We should chat about this one a bit. As you all know, all of this is based on Mod’s (P-Lopez) original Daily20pip system, which itself is based on the FXDD charts. Even today, Mod uses the FXDD data to determine his published signals. This comes into play here on the Monday Pivot calc, which goes back to the Friday data. Mod ignores any Sunday bars, and goes back to the last Friday bar for the Close number, AND a high or a low OF the latest FXDD bar makes the high or the low, which it does on occasion. Different brokers have different cutoff times for Friday. For example, I use Northfinance. FXDD’s last Friday is 2200. NF’s last bar is 2300, even though they both on the same time (GMT+3). So if I use strictly the last Friday bar, I will get different Monday pivot calcs because my NF last bar will be different than Mod’s FXDD last bar. So, in order to try to match Mod’s data, I added a “ignore Friday 2300 bar” option. Enabling this will duplicate the FXDD data using NorthFinance, which is what I use.

I HAVE NO IDEA HOW THIS WILL WORK WITH OTHER BROKERS, IBFX, ODL, ETC…. You will have to test and see, setting at 0 or 1 and see what happens.


Sets the GMT time at which the EA determines whether to Buy or Sell. The EA compares the market price at this time to enter the GBPFilter value, or the close price vs PivotPoint value, at this time. If the price is above Filter, a Buy, if bellow, as Sell. If this time setting is after the PivotCalc setting, the EA will WAIT until FilterTime, to determine the But or Sell, based on the Pivot Point calculated earlier at PivotTime. In either case, the trade does not become active until StartTime.


The GMT time at which the EA will be actively looking for a trade, 600 London time (for example). This is the start of the “Working” mode, the beginning of the trade window.


The GMT time end of the trade period, 1700 London time (for example). This is the end of the trade window, the end of the “Working” mode and the beginning of the “Waiting” mode.


This activates the Follow-the-Price entry mode as described earlier. A “0” deactivates the Follow-the-Price logic, and uses the GBPFilter entry method. A “1” activates the Follow-the-Price logic, and de-activates the GBPFilter logic.


Self explanatory. Sets the maximum price away from the levels a trade will be taken.


This sets the “Magic Number” for the EA. The MagicNumber is unique number the EA tags each trade it takes with. This allows the EA to “see” only it’s own trades, This EA will NOT take a trade if another trade is open, but it only “sees” it’s own trades, tagged with the MagicNumber, so you can have other trades open, either manually, or by an EA with different MagicNumber and you will not affect the operation of this EA

So you can have multiple instances of PivotMaster open, on different charts, with different magicNumbers, and each will operate independently

EXAMPLE: Open two one hour GBPUSD charts. On one, put PivotMaster with the D30P settings, and on the other, put PivotMaster with the DPG settings, each with a different MagicNumber. Both EA’s will trade as if the other were not there.

download forex book.gif