Finally, you can download my VS_EUROCROSS version. It will be expired July, 5 2009, and next update will be available after April, 26 2009.
Here the explanations of external variables that EA use:
extern int Magic = 1514;
Magic number if you run several EA at the same time on one account, make sure each EA has a different magic number.
extern int OpenHour = 22;
extern int CloseHour = 5;
These the time trading variable. You should know that at the last 30 minutes of closing hour, if there are no any open positions, then the EA will stop working.
extern bool AllowBuy =true;
extern bool AllowSell =true;
Sometime if you have your own analyzes about market movement, then you can tell the EA to trade only to your direction. Therefore if you only want to go long, then set the AllowSell variable to false, and leave it AllowBuy to true.
extern bool MM = true;
extern bool Marti_MM = false;
extern int Risk = 50;
extern double Lots = 0.1;
extern int LotsDigit = 2;
extern int Slippage = 3;
extern int StopLoss = 60;
Please read my last post before about Money Management, and the new option to use Martiangle money management.
extern double NormalSpread =3;
It’s a special variable to anticipate if brokers raise their spread. The different between current spread with the NormalSpread variable will be added to our signal filter. Therefore if you want EA always to work like a normal spread, set this value equal to current spread. If not, then EA will have a higher signal filter than it’s normally, and therefore will force the EA to get higher/lower price than it’s normally.
extern double MaxDayAtr =250;
This is the filter that we need to protect EA working only below MaxDayAtr.
extern double EquityTarget=0;
extern bool SecureMyEquityTarget=false;
Tell the EA to stop working after current equity reaches our target.
extern int MaxTradePerPosition = 4;
At the moment you can not change this value more then 4, but you change to less than 4.Please read this post about the impact of changing this value.
Tuesday, March 31, 2009
Monday, March 30, 2009
Only 90%
Finally a hard week has been passed to build this version using DLL extension. I have to sorry that current work does not have a same result with MQL4 extension. It’s only about 90% of trades that executed using MQL4 only, occurred by using DLL extension. I have tried several times to make it equal. But the last this is my best result. The truth I am not satisfied with this result. The result should be equal because there is no a different in the back test environment. And also I can get the same result if only calculate the Indicators in DLL only rather than to put all entry and exit logic in DLL.
Looking forward I still try to make it equal. But as I promised before that this version will be available this month, and the show must go on. However from now on each time I share my EA, than it will have an expiration time. I hope you can understand this situation. Although I believe that this method can not protect 100% of my work from any scammers, but it can minimized that problem. Someone must be a credible programmer that understands assembly programming to crack a DLL extension. I will update the expiration time periodically a week before current release expiring.
I offer another solution to avoid this problem by allowing anybody who submits its account number. Using account number protection we can throw out the time protection.
At the moment I have no problem to start to share this EA. I have tested this EA several time to catch any bug if appear. And seem it works well. My problem is the documentation doesn’t ready yet. But I decide to put any explanations about this EA only to this blog, rather to make it in a single documentation. This way may will rise this blog hits:).
Compare to my last back test result, it's only 90%
Looking forward I still try to make it equal. But as I promised before that this version will be available this month, and the show must go on. However from now on each time I share my EA, than it will have an expiration time. I hope you can understand this situation. Although I believe that this method can not protect 100% of my work from any scammers, but it can minimized that problem. Someone must be a credible programmer that understands assembly programming to crack a DLL extension. I will update the expiration time periodically a week before current release expiring.
I offer another solution to avoid this problem by allowing anybody who submits its account number. Using account number protection we can throw out the time protection.
At the moment I have no problem to start to share this EA. I have tested this EA several time to catch any bug if appear. And seem it works well. My problem is the documentation doesn’t ready yet. But I decide to put any explanations about this EA only to this blog, rather to make it in a single documentation. This way may will rise this blog hits:).
Compare to my last back test result, it's only 90%
Label:
VS_EUROCROSS
Tuesday, March 24, 2009
Using DLL in New EA
It's a hard task for me to program all EA's logic using C++ language. I have to do this to protect my work from scammers. Looking the backtest result may attrack people to sell it.
I also make this experience as a learning process to C++ programming language. Basically I just familiar with Java programming language wich is similar to C++, but in fact it's only easy to migrate from C++ to Java but not in reverse way.
At the moment I try to put all EA's logic in DLL, and it include the indicator calculation. And again for protecting this EA to be sold then it may have an expiration about 2-3 months, if it has not expiration time then it may limited by account number.
More on this new EA, I put new option to use Martiangle Money Management. The advantage of using Martiangle money management that it can reduce our drawdown. For example if we put our risk 50% with number of trade per position are 4, then in normal money management formula it's equal to 12,5% risk per trade. On the other way, using Martiangle Money Management the risk per trade will gradually increase. Using 50% risk with 4 trades per position, I use 10%,20%,30% and 40% formula. Therefore the first trade only use 10% of 50% risk wich is equal to 5%, the second is 20% of 50% wich is equal to 10%, the third 30% of 50% which is equal to 15% and the last trade will risk 40% of 50% which is equal to 20%.
The disadvantages of using this Martiangle Money Management formula, that almost about 40 percent of profitable trades made by a single trade. And it's more then 60 profitable trade made by only 2 trades. However loosing 1 trade using standar money management will make our equity suffer 12.5% drawdown (assuming 100 stoploss and pip's value is rounded to 1 or 10) while loosing 1 trade using Martiangle Money Management only make the equity suffer 5% drawdown.
Another indicator add to this EA to filter out bad trades, and throw out the former filter TradeLowRangeDay and TradeOutSideBand since this new EA only work for EURCHF and EURGBP.
This picture is the latest backtest result, and no more change I'll make, and now I just try to write all EA's logic from MQL4 languange to C++ programming language before sharing this EA.
VS_EUROCROSS_D01 EUROCHF
I also make this experience as a learning process to C++ programming language. Basically I just familiar with Java programming language wich is similar to C++, but in fact it's only easy to migrate from C++ to Java but not in reverse way.
At the moment I try to put all EA's logic in DLL, and it include the indicator calculation. And again for protecting this EA to be sold then it may have an expiration about 2-3 months, if it has not expiration time then it may limited by account number.
More on this new EA, I put new option to use Martiangle Money Management. The advantage of using Martiangle money management that it can reduce our drawdown. For example if we put our risk 50% with number of trade per position are 4, then in normal money management formula it's equal to 12,5% risk per trade. On the other way, using Martiangle Money Management the risk per trade will gradually increase. Using 50% risk with 4 trades per position, I use 10%,20%,30% and 40% formula. Therefore the first trade only use 10% of 50% risk wich is equal to 5%, the second is 20% of 50% wich is equal to 10%, the third 30% of 50% which is equal to 15% and the last trade will risk 40% of 50% which is equal to 20%.
The disadvantages of using this Martiangle Money Management formula, that almost about 40 percent of profitable trades made by a single trade. And it's more then 60 profitable trade made by only 2 trades. However loosing 1 trade using standar money management will make our equity suffer 12.5% drawdown (assuming 100 stoploss and pip's value is rounded to 1 or 10) while loosing 1 trade using Martiangle Money Management only make the equity suffer 5% drawdown.
Another indicator add to this EA to filter out bad trades, and throw out the former filter TradeLowRangeDay and TradeOutSideBand since this new EA only work for EURCHF and EURGBP.
This picture is the latest backtest result, and no more change I'll make, and now I just try to write all EA's logic from MQL4 languange to C++ programming language before sharing this EA.
VS_EUROCROSS_D01 EUROCHF
Label:
VS_EUROCROSS
Tuesday, March 17, 2009
New EA
Basically this EA has no much different with the VS_EURCHFD01. Both use same indicators, and also apply spread filter. But the way to make cost averaging make the difference.
The drawdown is 31%, using 50% risk without limitation in lot size as long as the platform allow to trade that size in backtest mode.
I have posted before, that this EA only make a good result in 2008. But by applying a good exit strategi the result on both EA at 2007 has no much different.
Now I still make any documentation about this EA. I try my best to make this EA can be download this month.
Volatily Cost Averaging System
The drawdown is 31%, using 50% risk without limitation in lot size as long as the platform allow to trade that size in backtest mode.
I have posted before, that this EA only make a good result in 2008. But by applying a good exit strategi the result on both EA at 2007 has no much different.
Now I still make any documentation about this EA. I try my best to make this EA can be download this month.
Volatily Cost Averaging System
Label:
VOLATILY SCALP,
VS_EUROCROSS
Soon...
Now the improvement of current EA on EURCHF also break 1 Million result. But seems current month is a hard session for the EA. I am not surprised about this situation if I compare the same period on last 2 year. A deep drawdown always happened at March.
The result of backtest show 38% drawdown that happen this month. Using 50% risk and no limitation in Lots size. This condition will show us the real drawdown, because when I give a limitation in lot size such as 100, then the drawdown in percentage may less.
Some big loss come after EA just made 4 win trades. This could be a potential filter. To stop trade after making several win trades. But let that filter becomes discreation one.
Label:
VOLATILY SCALP,
VS_EUROCROSS
Sunday, March 15, 2009
One More Zero
I have tried several approach to improve the EA. Currently I divide my work in 2 version. First version is an improvement of VS_EURCHFD01 version, you have seen the result on my last post. Really it's 3 times better then current version.
Second version is volatily cost averaging system. This second version break a million result in backtest. Unfortunately the great result only come after 2008. While the result on 2007 first version is better.
That's why I keep to hold my work. I try to combine theese EA and divide the risk.If this combination make a better result in profit and draw down then I would release only 1 version. Otherwise next time I just release them together.
Second version is volatily cost averaging system. This second version break a million result in backtest. Unfortunately the great result only come after 2008. While the result on 2007 first version is better.
That's why I keep to hold my work. I try to combine theese EA and divide the risk.If this combination make a better result in profit and draw down then I would release only 1 version. Otherwise next time I just release them together.
Label:
VOLATILY SCALP,
VS_EUROCROSS
Wednesday, March 11, 2009
External Variable
I am so sorry to forget to explain about money management rule.
extern bool MM = true;
Set this value to FALSE if You don't want to use money management.
extern int Risk = 50;
The value in percentage of current margin.
The important point here that Your Risk will be divided by variabel MaxTradePerPosition. For example if MaxTradePerPosition are 4, then it's mean each trade will risk about 12.5 percent. Therefore reducing MaxTradePerPosition will not reduce your risk. But increasing MaxTradePerPosition will reduce Your Risk.
extern double Lots = 0.1;
This is the lot size if You don't use money management.
extern int Slippage = 3;
Remember that You have to match your brokers quotation. If they use fractional pip, You should use 30, not 3.
extern int StopLoss = 60;
This is the stop loss that we use in pip. But this value not depend on your broker quotation.
extern bool MM = true;
Set this value to FALSE if You don't want to use money management.
extern int Risk = 50;
The value in percentage of current margin.
The important point here that Your Risk will be divided by variabel MaxTradePerPosition. For example if MaxTradePerPosition are 4, then it's mean each trade will risk about 12.5 percent. Therefore reducing MaxTradePerPosition will not reduce your risk. But increasing MaxTradePerPosition will reduce Your Risk.
extern double Lots = 0.1;
This is the lot size if You don't use money management.
extern int Slippage = 3;
Remember that You have to match your brokers quotation. If they use fractional pip, You should use 30, not 3.
extern int StopLoss = 60;
This is the stop loss that we use in pip. But this value not depend on your broker quotation.
Label:
External Variable,
VOLATILY SCALP
Tuesday, March 10, 2009
Make Improvement
EURUSD
EURCHF
For several days I try several methods to make this EA work better, not only increasing the profit but also try to reduce drawdown. I am not interesting to optimize the parameter value. What I want to try is to reduce our stop loss when trading time has been passed. Seem this method help to reduce the drawdown. There is a trailing function applied here. And also the use of cost averaging system will be confirmed with current volatility. The EA will measure the current volatility to decide how much same position will be opened.
Beside, I try to make it more aggressive in reentry during high volatility, but keep to use old entry rule. I have no attention yet to add another entry rule, except that new entry rule also a robust system.
The results of back test now improve in EURCHF and EURUSD Pair. But this is not the end yet. There are several methods that I didn’t try yet. I hope I can complete it next week
EURCHF
For several days I try several methods to make this EA work better, not only increasing the profit but also try to reduce drawdown. I am not interesting to optimize the parameter value. What I want to try is to reduce our stop loss when trading time has been passed. Seem this method help to reduce the drawdown. There is a trailing function applied here. And also the use of cost averaging system will be confirmed with current volatility. The EA will measure the current volatility to decide how much same position will be opened.
Beside, I try to make it more aggressive in reentry during high volatility, but keep to use old entry rule. I have no attention yet to add another entry rule, except that new entry rule also a robust system.
The results of back test now improve in EURCHF and EURUSD Pair. But this is not the end yet. There are several methods that I didn’t try yet. I hope I can complete it next week
Monday, March 9, 2009
Diversification
Each time people ask about what pair the best to trade, then my answer always the same, EURCHF. While every time I see my back test result on all pair, I always feel that my system will be better if we diversify our risk. An impressive result of back test in EURCHF, may look interesting to trade only this pair. This is true only if we have enough patients to trade this system. However the back test result show average 1 Month needed to recovery after suffer a loss and 3 Months for the longest time needed to make new peak in our equity.
My fantastic result on first week give me that confidence. When I run my EA on 5 pairs together, mostly the EA will execute trades on mayor pair together. Take long or EURUSD, GBPUSD, while short at USDCAD. Seem all this trade is a single position, shorting USD. And therefore the result will not be different if we put all the risk to 1 pair only. Only for the long term position that conclusion can be true. But since a shorter time frame than the result may be different. The way trend to develop on small time frame will be varying on each pair.
I put 3 pictures taken from my trade to show the sample. Much same situation occurred, and also gives a different result. For this sample trade I suffered a loss from long position in EURUSD, while get profit from long position on GBPUSD and short position on USDCAD.
At this situation, if I close all EURUSD position when USDCAD and GBPUSD have made profit, then overall trade still in positive territory. The fact I keep ride my loss on EURUSD and finally 1 trade stopped out before price crossing MA.
GBPUSD
EURUSD
USDCAD
My fantastic result on first week give me that confidence. When I run my EA on 5 pairs together, mostly the EA will execute trades on mayor pair together. Take long or EURUSD, GBPUSD, while short at USDCAD. Seem all this trade is a single position, shorting USD. And therefore the result will not be different if we put all the risk to 1 pair only. Only for the long term position that conclusion can be true. But since a shorter time frame than the result may be different. The way trend to develop on small time frame will be varying on each pair.
I put 3 pictures taken from my trade to show the sample. Much same situation occurred, and also gives a different result. For this sample trade I suffered a loss from long position in EURUSD, while get profit from long position on GBPUSD and short position on USDCAD.
At this situation, if I close all EURUSD position when USDCAD and GBPUSD have made profit, then overall trade still in positive territory. The fact I keep ride my loss on EURUSD and finally 1 trade stopped out before price crossing MA.
GBPUSD
EURUSD
USDCAD
Tuesday, March 3, 2009
Trading Jurnal March 3, 2009 Use Filter, dont try in real account
I make an experiment to avoid the filter in Mayor pair. What I see from yesterday, if avoid the filter, than I can make 2 profitable trade. Well same situation happen today. And also know Daily chart EurUsd show closing below bollinger band. While 5 period day ATR GPUSD shows above 250, it means there are no trades on mayor pair.
To many mistakes today. After loosing in EurUsd, I do not close EURCHF when price across ma. Finally after loosing on UsdCad, I decide to close any position, and let my equity back to where it begin. Yeah loosing all profit since a week.
To many mistakes today. After loosing in EurUsd, I do not close EURCHF when price across ma. Finally after loosing on UsdCad, I decide to close any position, and let my equity back to where it begin. Yeah loosing all profit since a week.
Monday, March 2, 2009
Trading Jurnal March 2, 2009 A Wrong Decision
I made a big mistake to let EA runs on GBPCHF. I did it cause I know USDCAD will not make any trade today since Daily chart penetrate Bollinger Bands. It's a hard decision, to configure USDCAD so it may trade, or to trade GBPCHF. I decide to trade GBPCHF, and then get 2 loss!!.
Am I get loss today? No. I still make money amount 200$. A superior performance come from GBPUSD pair. 3 positive trade can recover 1 loss. Another profit as usual come from EURUSD,EURCHF, and EURGBP. I could make 1000$ today, if that happen a 100% profit become easier this week. But 2% profit not bad, and it means know my equity grow 40% from capital. It's not impossible to get 100% grow this week.
Here my statement today.
And the complete statement till know.
Am I get loss today? No. I still make money amount 200$. A superior performance come from GBPUSD pair. 3 positive trade can recover 1 loss. Another profit as usual come from EURUSD,EURCHF, and EURGBP. I could make 1000$ today, if that happen a 100% profit become easier this week. But 2% profit not bad, and it means know my equity grow 40% from capital. It's not impossible to get 100% grow this week.
Here my statement today.
And the complete statement till know.
Risk Warning
Please note that Trading in the Foreign Exchange market might carry potential rewards, but also potential risks. You must be aware of the risks and are willing to accept them in order to trade in the foreign exchange market. Don't trade with money you can't afford to lose.