HFT Prop Challenge Master
- Experts
- Christoph Juergen Koegler
- Version: 2.2
- Updated: 21 September 2024
- Activations: 7
This EA is designed for passing challenges of prop trading firms that allow HFT (High Frequency Trading). It will not work on live accounts due to slippage. You should also not use it during the funded stage, the prop trading firm will decline the payout.
It works only on US30. The trading only takes place in the first minutes after the US cash market opens. The default setting should work. No set files are needed. The Timeframe does not matter.
Currently supported prop trading firms:
- 8 Figure Trader (@ TopFX)
- Algo Forex Funds (@ FXDDMauritius)
- Prop Firm Capital (@ FXTrading)
- Other Prop Firms are supported with the MT5 version
All other firms or live accounts are currently not supported. If you know other firms that allow HFT please contact me so that I can test and implement them.
Features:
- Stops trading when the defined profit target is reached
- Stops trading when the defined drawdown limit is reached
- Auto increase lot size when the EA has made the defined amount of profit
- If needed it does one or a few trades each trading day until the minimum number of trading days is reached
- Displays all settings and live status on the chart
- Optional US holiday filter (volatility too low)
- Auto detection of the trade starting time
No VPS needed, but the latency to the MT4 server should not be too high. I tested it with 50ms of latency and it worked. Latency above 50ms might also work, but it was not tested and is not supported.
For backtest or demo test use ICMarkets Demo or contact me for myfxbook link. Please note that EA is Broker sensitive and optimized for the supported prop trading firms, so the backtest might not be good on all brokers. Maybe you want to disable profit target in the backtest so that the EA does not stop after a few trades.
The EA does NOT use grid or martingale.
In most cases, the default settings should be good, but on some challenges you might want to change the "profit target in %". If you want to change some settings watch the youtube video "Settings and tips for HFT Prop Challenge Master" on my Youtube Channel or read the settings below:
Setting | Explanation |
---|---|
Lot size mode | Options: auto_increase: Increased the lot size after every x% profit made. fixed: Uses a fixed lot size which you can configure in the next field "Fixed lot size" |
Fixed lot size (if lot size mode = fixed) | Here you set the lot size you want to trade. This field is only considered if you choose "fixed" as the lot size mode. It is highly recommended to not use too large lot sizes and also consider the contract size of the asset. If the lot size is too large and the move in the market is very fast, you might fail your challenge by exceeding the maximum daily drawdown. |
Start contracts per 10k (if lot size mode = auto_increase) | The value in this field is used to calculate the initial lot size. Please note that if you put in for example 3 that this does not mean that 3 lots are traded. It means that per 10k USD on the account 3 contracts are traded. If you have for example a 100k account on Nova Funding then it will trade 30 contracts. Since the contract size on Nova Funding is 1 the 30 contracts would be 30 lots. If you have for example a 200k account on KortanaFX then it will trade 60 contracts. Since the contract size on KontanaFX is 10 the 60 contracts would be 6 lots. The lot size which will be traded will be shown on the chart. This field is only considered if you choose "auto_increase" as the lot size mode. |
Step contracts per 10k (if lot size mode = auto_increase) | With this amount of contracts per 10k account size the lot size will be increased if the needed profit is reached for the increase. It is calculated with the same logic as mentioned in the "Start contracts per 10k". This field is only considered if you choose "auto_increase" as the lot size mode. |
Increase every x% profit (if lot size mode = auto_increase) | If the value is set for example to 0.5 it means that for every 0.5% of profit (e.g. 500 USD on a 100k account) the lot size is increased with the defined step which is defined in "Step contracts per 10k". This field is only considered if you choose "auto_increase" as the lot size mode. |
End contracts per 10k (if lot size mode = auto_increase) | If the number of contracts has reached this value, no further lot size increase will be done. It is calculated with the same logic as mentioned in the "Start contracts per 10k". It is highly recommended to not use to huge lot sizes and also consider the contract size of the asset. If the lot size is too large and the move in the market is very fast, you might fail your challenge by exceeding the max daily drawdown. I do not recommend setting this value higher than the default. This field is only considered if you choose "auto_increase" as lot size mode. |
Daily loss limit mode (trailing, set less then challenge limit) | Options: percent: The EA stops trading if the daily drawdown in percent of the starting balance of this day is reached. USD: The EA stops trading if the daily drawdown in USD of the starting balance of this day is reached. disabled: Disable the daily loss limit mode (not recommended!) The daily drawdown is always calculated from the highest equity or balance (which was higher) and is trailing to not give away to much profit if the volatility is going out of the market. |
Daily loss limit in % (if daily loss limit mode = percent) | If the value is set for example to 1.0 it means that after 1.0% of loss from the highest balance or equity on this day (e.g. 1000 USD on a 100k account) the EA stops trading until the next day. Also if you challenge has for example a daily drawdown limit of 4% you should not set this value to 4% or 3.9%. Please note that when you have huge lot sizes and a very fast market move, it might take some time to close the open position and the loss of this trade might be worser then you wish because of slippage and latency. I do not recommend values above the default. This field is only considered if you choose "percent" as daily loss limit mode. |
Daily loss limit in $ (if daily loss limit mode = USD) | If the value is set for example to 1000 it means that after a 1000 USD loss from the highest balance or equity on this day the EA stops trading until the next day. Also if your challenge has for example a daily drawdown limit of 4000 USD you should not set this value to 4000 USD or 3900 USD. Please note that when you have huge lot sizes and a very fast market move, it might take some time to close the open position and the loss of this trade might be worser then you wish because of slippage and latency. This field is only considered if you choose "USD" as daily loss limit mode. |
Challenge size in $ (0 = auto detect) | If the value is 0 the EA tries to auto detect the initial balance. This only works if the deposit is shown in the Account History of the MT4 Terminal. This is usually the case when you just bought the challenge. If the initial deposit is not shown in the Account History please right-click on the Account History and select "All History" and restart the EA. The EA will tell you if he could not get this information. As an alternative, you can manually configure the challenge size (e.g. 100000 on a 100k challenge) in this input field. But please note that if you set the wrong challenge size, the profit target calculation in % will also be wrong. |
Profit target in % (if profit target mode = percent) | If the value is set for example to 10.05 it means that after a profit of 10.05% of the challenge size (e.g. 10050 USD profit on a 100k account) the EA stops trading. This field is only considered if you choose "percent" as the profit target mode. |
Minimum trading days (-1 = auto detect) | Set here the number of minimum trading days you need to complete the challenge. If it is set to -1 it tries to auto detect this. If the number of trading days is used, it shows on the chart how much trading days are already fulfilled out of the needed trading days. |
Trading start hour mode (next input is ignored on auto_detect) | Options: auto_detect: The EA will try to auto detect what value should be set as "Trading start and end time hour" (which is the next input field). In this case the next input field is ignored. If it cannot auto detect it, the start of the EA will be aborted. manual: The EA will use the value of the next inut field "Trading start and end time hour" as start and end time hour. |
Trading start time hour (MT4 server time) | If the value is for example 16 it means that the hour in which trading starts is 16. Please note that the EA used the broker server time from the market watch, so it should fit to this time, not to your local time. Currently for all supported prop trading firms 16 is the right value for the opening of the cash market. This setting is only used by the EA if the "Trading start hour mode" is set to "manual'. |
Trading start time minutes (MT4 server time) | If the value is for example 30 (and the hour is still 16) it means that the minute in which trading starts is 16:30. This setting is used always, not matter what is set as "Trading start hour mode". |
Trading end time hour (MT4 server time) | At this hour the EA stops opening new orders. |
Trading end time minutes (MT4 server time) | If the value is for example 45 (and the hour is still 16) it means that the minute in which trading ends is 16:45. This is usually a good value because later volatility goes out of the market and the market moves are too slow for the EA to make profits. This setting is used always, not matter what is set as "Trading start hour mode". |
Trading on US holidays (not recommended) | Options: false: The EA will not trade on US holidays where the Future market is open, but the cash market is closed. In these cases, the volatility is normally too low for this strategy. true: The EA will trade on US holidays when the broker provides quotes even when the cash market is closed (not recommended) |
Comment for each trade | The text of this input field is written in each trade comment |
Magic number | Here you can specify a magic number which needs to be unique in case you run also other EAs on the same account. It is not recommend to have other EAs running in parallel. |
Max number of messages sent to broker per day (0 = unlimited) | If you set here a number above 0, for example 2000, the EA will stop trading on this day when he has sent 2000 messages to the broker. A message is every creation, deletion or modification of a order. If you do for example a demo test on IC Markets you want to limit this number because the broker will first send you automatic emails and if you don't do anything, IC Markets will also block your demo account. |
Show logo of the EA | Options: true: Shows the logo of the Expert Advisor false: Hides the logo of the Expert Advisor |
User didn't leave any comment to the rating