<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DkcNRn4zfSp7ImA9WhRVFkQ.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464</id><updated>2012-01-16T16:38:17.085+10:30</updated><category term="MQL5" /><category term="musings" /><category term="Projects" /><title>Paul's Forex random walk</title><subtitle type="html">I've been trading foreign exchange for five years now, all on the Metatrader platform, and I enjoy the challenge of searching for strategies and turning them into programs. This blog tracks whatever vague direction I happen to be taking at the time.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>43</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/blogspot/OQAx" /><feedburner:info uri="blogspot/oqax" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;A0QFQXg9eCp7ImA9WhdaEUg.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-5653340791962676626</id><published>2011-08-07T10:52:00.002+09:30</published><updated>2011-10-21T11:38:30.660+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-21T11:38:30.660+10:30</app:edited><title>Waking up to Neural Network committees</title><content type="html">&lt;div class="MsoNormal"&gt;
Time to wake up from my blogging slumber and write a few more posts.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
A huge amount has happened in my trading life in the well over 12 months since my last post.&amp;nbsp; I finally completed the early stopping Neural Network library described in my last post of June 2010, wrote an EA or two and played around with it for ages without success. &amp;nbsp;I also tried the Nearest Neighbour algorithm, (see a subsequent post that I have not yet written but intend to), and became diverted onto many other ideas.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Then … back to the Neural Network idea: how about a &lt;i&gt;committee &lt;/i&gt;of Neural Networks?&amp;nbsp; I had been reluctant to try this purely because of the processing time: as it is, the EA that I have written can take several hours to run a couple of years’ single backtest.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Well, it seems that this may have some promise.&amp;nbsp; You train a group of NNs with different topologies and parameters, then the simplest method of obtaining a result is to enter a trade when they all agree.&amp;nbsp; It is a well-established approach in the NN literature.&amp;nbsp; I’ve tried up to three NNs, although watching grass grow has now become a new fascinating pastime: some of the arrangements I have tried have taken a couple of days to backtest.&amp;nbsp; Just as with all NN techniques, this is far more art than science: what is a sufficiently different-looking topology to allow the NN to produce a result that is sufficiently independent of its peers?&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Attached is a backtest from 1/1/2008 to present for a NN committee of two, trained with a factset of 6/12 EMA cross and both SL and TP set to 100&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-hJaRL0dHDHE/Tj-aP64OAUI/AAAAAAAAAR4/-E8MXO_j27k/s1600/TesterGraphReport2011.08.08.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="100" src="http://2.bp.blogspot.com/-hJaRL0dHDHE/Tj-aP64OAUI/AAAAAAAAAR4/-E8MXO_j27k/s400/TesterGraphReport2011.08.08.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-5653340791962676626?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/SXEuoh08Nzb5xlG2pmLCfctxQWQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SXEuoh08Nzb5xlG2pmLCfctxQWQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/SXEuoh08Nzb5xlG2pmLCfctxQWQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SXEuoh08Nzb5xlG2pmLCfctxQWQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/6wcDDQ_40hc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/5653340791962676626/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2011/08/waking-up-to-neural-network-committees.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/5653340791962676626?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/5653340791962676626?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/6wcDDQ_40hc/waking-up-to-neural-network-committees.html" title="Waking up to Neural Network committees" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-hJaRL0dHDHE/Tj-aP64OAUI/AAAAAAAAAR4/-E8MXO_j27k/s72-c/TesterGraphReport2011.08.08.png" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2011/08/waking-up-to-neural-network-committees.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEIBQH89eyp7ImA9WhRVFUk.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-528430556808651422</id><published>2010-05-15T10:44:00.002+09:30</published><updated>2012-01-14T23:39:11.163+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-14T23:39:11.163+10:30</app:edited><title>An early stopping Neural Network strategy</title><content type="html">I've written several times in this blog about a Neural Network idea that I've been working on for some time.&amp;nbsp; I wrote a NN dll for MQL4, but found that the treatment of history in MT4 makes the collection of sufficient data to train the NN very difficult.&amp;nbsp; However, in the process I did come up with a manual approach to training the NN which showed promise.&amp;nbsp; With the much faster speed of MQL5, and the very welcome ability to encapsulate code, it is now fully possible to write everything in MQL5, including coding the manual process, meaning that the whole concept can be backtested and optimised.&lt;br /&gt;
&lt;br /&gt;
The broadest descripion of the idea is &lt;em&gt;early stopping&lt;/em&gt;, which is not new in the slightest, and in fact most NN literature mentions it.&amp;nbsp; Early stopping attempts to address the problem with NNs&amp;nbsp;that they are so good at learning that eventually they start to memorise individual data items, which is the familiar problem found in EA optimisation of&amp;nbsp;curve fitting.&amp;nbsp; Early stopping terminates the learning process at a point where hopefully the NN has only learnt &lt;em&gt;patterns&lt;/em&gt;, rather than &lt;em&gt;data&lt;/em&gt;.&lt;br /&gt;
&lt;br /&gt;
So this is the hypothesis: a profitable NN EA can be developed ...&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;If a NN can be trained using an early stopping technique to recognise forex patterns&lt;/li&gt;
&lt;li&gt;If patterns repeat in forex trading, and more importantly, &lt;em&gt;come in clusters&lt;/em&gt;&lt;/li&gt;
&lt;/ol&gt;
There is no doubt in my mind that item 1 is true, since I have achieved it with manual selection of NNs.&amp;nbsp; What is somewhat less certain is item 2, although the general technical analysis approach does tend to support it.&amp;nbsp; Terms such as &lt;em&gt;trending market&lt;/em&gt;, or &lt;em&gt;sideways market &lt;/em&gt;imply&amp;nbsp;persistence of patterns,&amp;nbsp; and even a non-profitable EA can often show lengthy periods of profitability.&lt;br /&gt;
&lt;br /&gt;
This last point is another key: rather than discarding all technical analysis in favour of a magical NN black box, why not look first for a basic EA strategy which seems to support item 2 above?&amp;nbsp; Its equity curve should show extended periods of profitability which could then be&amp;nbsp;selected by a NN filter, in a similar way that the commonly used long term moving average is used to detect a trending market.&lt;br /&gt;
&lt;br /&gt;
The whole idea is already in MQL5 code, with a number of coding errors which I need to find, which will take some time.&lt;br /&gt;
&lt;br /&gt;
Here's the macro view&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/_-saOoIRoJE8/S-31TGalwWI/AAAAAAAAAHc/RGkCoRQNhJY/s1600/nn.bmp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://1.bp.blogspot.com/_-saOoIRoJE8/S-31TGalwWI/AAAAAAAAAHc/RGkCoRQNhJY/s400/nn.bmp" width="400" wt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-528430556808651422?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/SDe_syn2e-CaB9bMjLtBKyOuO84/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SDe_syn2e-CaB9bMjLtBKyOuO84/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/SDe_syn2e-CaB9bMjLtBKyOuO84/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SDe_syn2e-CaB9bMjLtBKyOuO84/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/8lj-jXhIj2I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/528430556808651422/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/05/neural-network-strategy.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/528430556808651422?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/528430556808651422?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/8lj-jXhIj2I/neural-network-strategy.html" title="An early stopping Neural Network strategy" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_-saOoIRoJE8/S-31TGalwWI/AAAAAAAAAHc/RGkCoRQNhJY/s72-c/nn.bmp" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/05/neural-network-strategy.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0YBQ3oycCp7ImA9WxFQF0g.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-8084071674004877173</id><published>2010-05-13T23:29:00.000+09:30</published><updated>2010-05-13T23:29:12.498+09:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-13T23:29:12.498+09:30</app:edited><title>At last, the VOM article has been published</title><content type="html">See the &lt;a href="http://www.mql5.com/en/forum/978"&gt;MQL5.com article section&lt;/a&gt;.&amp;nbsp; It was a big effort for me to get it finished, topped off at the end by their somewhat tricky article editing software.&amp;nbsp; But the editor, Eugene, was very helpful, and it's now up there.&amp;nbsp; A nice WebMoney payment, and an MQL5.com rating that has jumped to 588.&lt;br /&gt;
&lt;br /&gt;
What now?&amp;nbsp; It's been hanging over my head for so long.&amp;nbsp; I get the feeling that it will be rather overwhelming for most readers, although I hope it is taken up by advanced coders and cleaned up in the process.&amp;nbsp; The fact remains that it is really the only way to manage multiple orders on the one symbol in MT5.&amp;nbsp; I'm very prepared to spend time responding to questions and fixing bugs.&lt;br /&gt;
&lt;br /&gt;
But what I really want to do now is to finish off my Neural Network EA, and discover whether the approach that I've been thinking about for so long is going to work.&amp;nbsp; It's coded, but something's wrong with the learning process, and will probably require many hours to find out why.&amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-8084071674004877173?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/YkORdg4Ca6ElGXsAn3p-688YF8s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YkORdg4Ca6ElGXsAn3p-688YF8s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/YkORdg4Ca6ElGXsAn3p-688YF8s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YkORdg4Ca6ElGXsAn3p-688YF8s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/CSABktG1kPE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/8084071674004877173/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/05/at-last-vom-article-has-been-published.html#comment-form" title="13 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/8084071674004877173?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/8084071674004877173?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/CSABktG1kPE/at-last-vom-article-has-been-published.html" title="At last, the VOM article has been published" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>13</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/05/at-last-vom-article-has-been-published.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MFRX44fip7ImA9WxFQEk4.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-1090271332834169487</id><published>2010-05-07T22:00:00.000+09:30</published><updated>2010-05-07T22:00:14.036+09:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-07T22:00:14.036+09:30</app:edited><title>Virtual Order Manager V1.0</title><content type="html">I am currently going through the process of publishing this with a comprehensive article on the MQL5 site, so hopefully in a week or two it will be available there.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://users.tpg.com.au/phamsmit/vom/virtual%20order%20manager.zip"&gt;VOM V1.0 files&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-1090271332834169487?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/eEHmzxIrfEYzOoCepwDqoc26HJk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eEHmzxIrfEYzOoCepwDqoc26HJk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/eEHmzxIrfEYzOoCepwDqoc26HJk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eEHmzxIrfEYzOoCepwDqoc26HJk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/JCEggFRjvOY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/1090271332834169487/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/05/virtual-order-manager-v10.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1090271332834169487?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1090271332834169487?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/JCEggFRjvOY/virtual-order-manager-v10.html" title="Virtual Order Manager V1.0" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/05/virtual-order-manager-v10.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUEBRnw_fCp7ImA9WxFSFkg.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-1680697486651624739</id><published>2010-04-19T15:42:00.003+09:30</published><updated>2010-04-19T15:44:17.244+09:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-19T15:44:17.244+09:30</app:edited><title>Eight months of virtual hosting</title><content type="html">A lot has happened since my &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/08/running-mt4-on-virtual-host.html"&gt;first blog entry on virtual hosting&lt;/a&gt;, which was on 28th August last year. &lt;br /&gt;
&lt;div&gt;My original post described what I did to set up a virtual host. In summary&lt;/div&gt;&lt;ul&gt;&lt;li&gt;A simple request to Commercial Network Services that enabled me to have Metatrader 4 up and running in two hours&lt;/li&gt;
&lt;li&gt;Situated in New York to minimise ping times to FXDD.&lt;/li&gt;
&lt;li&gt;$US30 per month&lt;/li&gt;
&lt;/ul&gt;What has happened since then&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;I’ve had the most relaxing eight months I can recall in terms of MT4 reliability. The virtual hosting service isolated my MT4 live account from the implications of a 36 hour phone line fault, a 12 hour power outage in my street and two multi-day visits to hospital. Conversely, I experienced one issue with a failed restart command that I requested of the virtual host, which CNS responded to within a couple of hours.&lt;/li&gt;
&lt;li&gt;I started the virtual host with 384MB of memory, but with up to three MT4 clients and two beta MT5 clients running I upgraded to 640MB at the additional cost of $US5.12 per month. The amount of container memory may still seem very low, but it’s the right amount for the purpose now, and can be adjusted immediately any time, in contrast with the purchase of a general purpose PC with multi-GB of memory to run large concurrent applications and to cater for future requirements.&lt;/li&gt;
&lt;li&gt;For some time CNS has been encouraging their customers to move from Virtuosso host software to Microsoft’s Hyper-V, so I did this about a month ago. Before, my container was a Windows 2003 x64 instance, and the new container is Windows XP 32 bit. Everything works fine and this should remove the x64 limitation with running 32 bit dlls, which I have no need to do right now. It is however the one area in which I have less than 100% satisfaction with CNS: their console which shows details of my virtual instance is still pointing to the old Virtuosso host, and their console upgrade to point to the Hyper-V stuff has been “real soon now” ever since I changed over.&lt;/li&gt;
&lt;li&gt;The last change is an interesting one: my FXDD live account is now with FXDD Malta. I believe that this is an offshore strategy to circumvent the new NFA FIFO laws in the US. The funds are still with a secure (?) US bank, but when I get a moment I must check out the ping times from New York, which will be a lot slower if the servers are physically in Malta. &lt;/li&gt;
&lt;/ul&gt;So overall, I thoroughly recommend virtual hosting. At $420 per year it’s a reasonably cost effective alternative to having a dedicated Metatrader PC at home, and it’s certainly a lot more reliable.&lt;br /&gt;
&lt;br /&gt;
I have no association with CNS beyond being one of their customers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-1680697486651624739?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/dngPivZ25BjAyH8UOYTQvYnJCTo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dngPivZ25BjAyH8UOYTQvYnJCTo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/dngPivZ25BjAyH8UOYTQvYnJCTo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dngPivZ25BjAyH8UOYTQvYnJCTo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/10wDQ0X2_d8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/1680697486651624739/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/04/eight-months-of-virtual-hosting.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1680697486651624739?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1680697486651624739?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/10wDQ0X2_d8/eight-months-of-virtual-hosting.html" title="Eight months of virtual hosting" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/04/eight-months-of-virtual-hosting.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0MNRn87fSp7ImA9WxFTEE0.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-2848993806019517636</id><published>2010-03-31T12:37:00.003+10:30</published><updated>2010-03-31T12:41:37.105+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-31T12:41:37.105+10:30</app:edited><title>Two VOM shorts on EURUSD</title><content type="html">&lt;a href="http://paulsfxrandomwalk.blogspot.com/2010/03/real-hedge-situation-with-two-different.html"&gt;Earlier, I posted an example of two VOM EAs with opposing virtual orders&lt;/a&gt;, resulting in no net position at the broker.&lt;br /&gt;
&lt;br /&gt;
Today, there is an example of the two EAs agreeing on price direction. Both the FrAMA Cross EA and the Support Resistance EA are short on EURUSD, and it is instructive to see how this ends up in the VOM and at the server.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;FrAMA Cross EA on daily EURUSD chart&lt;/strong&gt;&lt;br /&gt;
Virtual short 0.1 lots at 1.33978. This has a wide protective virtual stoploss 500 (or 5000, in 5 digit terms) pips away.&lt;br /&gt;
This was the first order executed, and the server stoploss was set at 550 pips, ie virtual stop plus 50.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Support Resistance EA on hourly EURUSD chart&lt;/strong&gt;&lt;br /&gt;
Virtual short 0.1 lots at 1.34895. This has a virtual stoploss 85 (or 850, in 5 digit terms) pips away.&lt;br /&gt;
This is what happened to the server position when this second order was executed&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The server lots moved up to 0.2 short&lt;/li&gt;
&lt;li&gt;The server position open price is now the average of the two orders - this is automatically calculated by the broker.&lt;/li&gt;
&lt;li&gt;The VOM moved the server stoploss down to the tightest virtual stoploss plus 50 (1.36195), which can be seen on the daily chart.&lt;/li&gt;
&lt;/ul&gt;If the virtual stoploss for this EA is hit, then the server stoploss will revert back to the much wider stoploss of the FrAMA Cross EA&lt;br /&gt;
&lt;br /&gt;
All this careful maintenance of the server stoploss at the tightest stop plus 50 (500) pips is there for disaster protection in the event of Internet or PC failure.&lt;br /&gt;
&lt;a href="http://2.bp.blogspot.com/_-saOoIRoJE8/S7KuN8zePdI/AAAAAAAAAHA/ZCo3xOAbk3A/s1600/Support_Resistance_EA_VOM.gif" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" nt="true" src="http://2.bp.blogspot.com/_-saOoIRoJE8/S7KuN8zePdI/AAAAAAAAAHA/ZCo3xOAbk3A/s320/Support_Resistance_EA_VOM.gif" width="320" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_-saOoIRoJE8/S7KunayWHoI/AAAAAAAAAHI/U7AnJTEfNaE/s1600/FrAMA_Cross_EA_VOM.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" nt="true" src="http://4.bp.blogspot.com/_-saOoIRoJE8/S7KunayWHoI/AAAAAAAAAHI/U7AnJTEfNaE/s320/FrAMA_Cross_EA_VOM.gif" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-2848993806019517636?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/w9qNPgNBV972526ob1soHASgfhI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w9qNPgNBV972526ob1soHASgfhI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/w9qNPgNBV972526ob1soHASgfhI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w9qNPgNBV972526ob1soHASgfhI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/gjXnHY_t6qI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/2848993806019517636/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/03/earlier-i-posted-example-of-two-vom-eas.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/2848993806019517636?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/2848993806019517636?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/gjXnHY_t6qI/earlier-i-posted-example-of-two-vom-eas.html" title="Two VOM shorts on EURUSD" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_-saOoIRoJE8/S7KuN8zePdI/AAAAAAAAAHA/ZCo3xOAbk3A/s72-c/Support_Resistance_EA_VOM.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/03/earlier-i-posted-example-of-two-vom-eas.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MBQXs9fyp7ImA9WxBaGEg.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-1277227923447713565</id><published>2010-03-29T20:07:00.000+10:30</published><updated>2010-03-29T20:07:30.567+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-29T20:07:30.567+10:30</app:edited><title>Virtual Order Manager V0.6</title><content type="html">A few updates in &lt;a href="http://users.tpg.com.au/phamsmit/vom/virtual%20order%20manager.zip"&gt;this version&lt;/a&gt;, mainly a fix for a bug in which the open orders file wasn't being read properly.&lt;br /&gt;
&lt;br /&gt;
Still to come is an indicator which lists open orders.....&lt;a href="http://www.blogger.com/"&gt;&lt;/a&gt;&lt;span id="goog_751427951"&gt;&lt;/span&gt;&lt;span id="goog_751427952"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-1277227923447713565?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/i9ISnzyvEfbh2SZhC3Uh1QQnBFs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/i9ISnzyvEfbh2SZhC3Uh1QQnBFs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/i9ISnzyvEfbh2SZhC3Uh1QQnBFs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/i9ISnzyvEfbh2SZhC3Uh1QQnBFs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/BCEr3Tpu6Z8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/1277227923447713565/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/03/virtual-order-manager-v06.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1277227923447713565?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1277227923447713565?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/BCEr3Tpu6Z8/virtual-order-manager-v06.html" title="Virtual Order Manager V0.6" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/03/virtual-order-manager-v06.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkIAQn08eip7ImA9WxBbGEQ.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-3325760298396087860</id><published>2010-03-15T09:30:00.004+10:30</published><updated>2010-03-18T16:05:43.372+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-18T16:05:43.372+10:30</app:edited><title>Forward tests suspended for a short time</title><content type="html">I run all my MetaTrader accounts (MT4&amp;nbsp;&amp;amp; MT5 demo and MT4 live) on a &lt;a href="http://www.commercialnetworkservices.com/"&gt;Commercial Network Services&lt;/a&gt;&amp;nbsp; virtual desktop (see original post &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/08/running-mt4-on-virtual-host.html"&gt;here&lt;/a&gt;). Although there have been a couple of negative comments on this blog about CNS, it's been completely trouble-free for me. &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://helpdesk.commercialnetworkservices.net/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=183"&gt;CNS has been promoting&lt;/a&gt; a move to &lt;a href="http://en.wikipedia.org/wiki/Hyper-V"&gt;Hyper-V&lt;/a&gt; for some time, so I decided to do it. Hyper-V is apparently even more reliable than Virtuozzo, which is what I was running on before. I received an email this morning that the change had occurred, but I didn't have much time before going to work so have only set up my live account at this stage. It only took me about 20 minutes, and it's running fine - I'll write another blog soon on my impressions of Hyper-V and the general experience of remote desktop working.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Other than being a customer I&amp;nbsp;have no connection whatsoever with CNS.&lt;br /&gt;
&lt;br /&gt;
[ update 18/3 ]&lt;br /&gt;
Just waiting for another MT5 build to come out before I can start the forward tests again.&amp;nbsp; The last two builds broke my VOM code but as usual MetaQuotes have been very responsive in fixing it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-3325760298396087860?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/u_3c-hdVHzFr3GNzRxPqbOxh57Y/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/u_3c-hdVHzFr3GNzRxPqbOxh57Y/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/u_3c-hdVHzFr3GNzRxPqbOxh57Y/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/u_3c-hdVHzFr3GNzRxPqbOxh57Y/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/ykoAMunmYRo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/3325760298396087860/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/03/forward-tests-suspended-for-short-time.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3325760298396087860?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3325760298396087860?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/ykoAMunmYRo/forward-tests-suspended-for-short-time.html" title="Forward tests suspended for a short time" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/03/forward-tests-suspended-for-short-time.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0ENRn4yeip7ImA9WxBbEks.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-7991152525534478621</id><published>2010-03-11T10:22:00.003+10:30</published><updated>2010-03-11T10:31:37.092+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-11T10:31:37.092+10:30</app:edited><title>A real "hedge" situation with two different timeframe MQL5 EAs using the Virtual Order Manager</title><content type="html">I started up the FrAMA Cross EA VOM forward test at least a couple of weeks ago during a massive EURUSD downtrend, and the first cross event occurred yesterday with a long trade which has already reversed this morning to a short after pulling in 111 pips. So it's finally in the market. I am reassured to see a profitable trade first off, but remember that this is such a slow trader that even though the backtest is excellent it is not at all certain that it will be profitable long term.&lt;br /&gt;
&lt;br /&gt;
It's good to see an example of a real "hedge" scenario happening here with the two different timeframe EAs. The Support Resistance EA entered a EURUSD long last week against support in the 1.3450 area (which is off the bottom of the chart screenshot shown below), and the FrAMA Cross EA is now EURUSD short. The result is no open position at the broker, with the VOMs maintaining the opposing long and short trades respectively.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-saOoIRoJE8/S5gxb9cKMQI/AAAAAAAAAGo/7Re4qQ2khfw/s1600-h/FrAMA_Cross_EA_VOM.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/_-saOoIRoJE8/S5gxb9cKMQI/AAAAAAAAAGo/7Re4qQ2khfw/s320/FrAMA_Cross_EA_VOM.gif" vt="true" width="320" /&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/_-saOoIRoJE8/S5gxp454r4I/AAAAAAAAAGw/CYuW0_J_4E0/s1600-h/Support_Resistance_EA_VOM.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_-saOoIRoJE8/S5gxp454r4I/AAAAAAAAAGw/CYuW0_J_4E0/s320/Support_Resistance_EA_VOM.gif" vt="true" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-7991152525534478621?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/cCZb6JDUxyNdZ-3kbiU-lUM7FYk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cCZb6JDUxyNdZ-3kbiU-lUM7FYk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/cCZb6JDUxyNdZ-3kbiU-lUM7FYk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cCZb6JDUxyNdZ-3kbiU-lUM7FYk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/PXg3BJ0qpe4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/7991152525534478621/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/03/real-hedge-situation-with-two-different.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7991152525534478621?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7991152525534478621?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/PXg3BJ0qpe4/real-hedge-situation-with-two-different.html" title="A real &quot;hedge&quot; situation with two different timeframe MQL5 EAs using the Virtual Order Manager" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_-saOoIRoJE8/S5gxb9cKMQI/AAAAAAAAAGo/7Re4qQ2khfw/s72-c/FrAMA_Cross_EA_VOM.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/03/real-hedge-situation-with-two-different.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0YFQ38_eyp7ImA9WxBUFUU.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-4762690420584343067</id><published>2010-03-03T13:28:00.001+10:30</published><updated>2010-03-03T13:28:32.143+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-03T13:28:32.143+10:30</app:edited><title>Reorganising the forward tests</title><content type="html">I have been letting a number of forward tests run for some time without really paying much attention to them, so it's time to clean everything up.&lt;br /&gt;
&lt;br /&gt;
Here's what will continue to run.&amp;nbsp; These will also have a link in the forward tests section on the right, and I have looked through old posts and updated links so I hope everything works.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;MetaTrader 5&lt;/strong&gt;&lt;br /&gt;
I am running two VOM EAs on the one demo account.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/FrAMA_Cross_EA_VOM.gif"&gt;FrAMA Cross EA VOM&amp;nbsp;screenshot (D1)&lt;/a&gt;, discussed &lt;a href="http://paulsfxrandomwalk.blogspot.com/2010/02/is-frama-cross-ea-successful.html"&gt;here&lt;/a&gt;.&amp;nbsp; Has still not entered its first trade, but may buy in the next day or two.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/Support_Resistance_EA_VOM.gif"&gt;Support Resistance EA VOM&amp;nbsp;screenshot (H1)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/StatementDetailed.htm"&gt;Combined detailed statement&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;strong&gt;Past forward tests on &lt;/strong&gt;&lt;strong&gt;MetaTrader 4&lt;/strong&gt;&lt;br /&gt;
I was running a number of tests on MT4, in particular&amp;nbsp;two versions of a News Trader, but I'm going to stop for the moment.&amp;nbsp; The best NewsTrader only broke even at best, and obviously needs work.&amp;nbsp; I'll be converting to MQL5 as some stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-4762690420584343067?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/norfmted0kij4j7paFQBfpZxmqE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/norfmted0kij4j7paFQBfpZxmqE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/norfmted0kij4j7paFQBfpZxmqE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/norfmted0kij4j7paFQBfpZxmqE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/Wl84eqBCq6o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/4762690420584343067/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/03/reorganising-forward-tests.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/4762690420584343067?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/4762690420584343067?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/Wl84eqBCq6o/reorganising-forward-tests.html" title="Reorganising the forward tests" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/03/reorganising-forward-tests.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YDQ38-eCp7ImA9WxBVEUw.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-3289360661115576880</id><published>2010-02-14T12:02:00.000+10:30</published><updated>2010-02-14T12:02:52.150+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-14T12:02:52.150+10:30</app:edited><title>Virtual Order Manager V0.5</title><content type="html">&lt;a href="http://users.tpg.com.au/phamsmit/VOM/Virtual%20Order%20Manager%20V0.5.zip"&gt;The latest version 0.5 here&lt;/a&gt;.&amp;nbsp; Help file &lt;a href="http://users.tpg.com.au/phamsmit/VOM/VOM%20help%20V0.5.chm"&gt;here&lt;/a&gt;.&amp;nbsp; I realised that there were lots of inconsistencies in variable types.&amp;nbsp; In particular the conversion of magic from ulong back to int was causing problems, not surprisingly.&lt;br /&gt;
&lt;br /&gt;
I've just started developing an indicator to give a better display of open VOM orders.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-3289360661115576880?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/j7zZATUFKGtUp839EraBO2v_f8A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/j7zZATUFKGtUp839EraBO2v_f8A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/j7zZATUFKGtUp839EraBO2v_f8A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/j7zZATUFKGtUp839EraBO2v_f8A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/xzw2aThh2E4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/3289360661115576880/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/02/virtual-order-manager-v05.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3289360661115576880?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3289360661115576880?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/xzw2aThh2E4/virtual-order-manager-v05.html" title="Virtual Order Manager V0.5" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/02/virtual-order-manager-v05.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YFQ3s-fSp7ImA9WxBWF08.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-1931968760664881426</id><published>2010-02-07T13:11:00.006+10:30</published><updated>2010-02-09T23:41:52.555+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-09T23:41:52.555+10:30</app:edited><title>Virtual Order Manager V0.4</title><content type="html">[updated on 9/2 to V0.4]&lt;br /&gt;
&lt;br /&gt;
A recap: the Virtual Order Manager I am developing enables MT4-like trades to be submitted to MT5 by maintaining a&amp;nbsp;record of virtual trades at the MT5 client&amp;nbsp;PC, while the broker server maintains single positions per symbol. &amp;nbsp;This has advantages of &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Enabling what many in the Metatrader community refer to as "hedge trading" or, more&amp;nbsp;accurately, trades in the opposite direction against a single symbol.&amp;nbsp; This can often occur with EAs that trade on different timeframe charts.&amp;nbsp; There are also some EAs often referred to as "Hedge EAs" and grid traders which can issue two or more trades in opposite directions within the one strategy.&lt;/li&gt;
&lt;li&gt;Stops and pending orders tighter than the minimum stoplevel - SymbolInfoInteger(Symbol(),SYMBOL_TRADE_STOPS_LEVEL).&lt;/li&gt;
&lt;li&gt;Stealth stops and pending orders, ie those which the broker cannot see&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;I have made one big change since the &lt;a href="http://paulsfxrandomwalk.blogspot.com/2010/01/testing-virtual-order-manager-with.html"&gt;first release&lt;/a&gt; which has grealy stabilised the behaviour.&amp;nbsp; Instead of each VOM instance trying to maintain a full list of all virtual orders for all EAs, I now have a separate file for each EA.&amp;nbsp; This approach has been running very well for several weeks, including the &lt;a href="http://paulsfxrandomwalk.blogspot.com/2010/01/getting-there-with-vom.html"&gt;stress test&lt;/a&gt;.&amp;nbsp; This will also make a virtual order listing indicator EA that I plan to write a bit more complex, since it wil have to read mulitple open order files.&amp;nbsp; But better to have complexity there than in the VOM itself.&lt;br /&gt;
&lt;br /&gt;
So... &lt;a href="http://users.tpg.com.au/phamsmit/VOM/Virtual%20Order%20Manager%20V0.4.zip"&gt;here's a zipped&amp;nbsp;package&lt;/a&gt; of the Virtual Order Manager V0.4 files.&amp;nbsp; Unzip to Experts\Virtual Order Manager.&amp;nbsp; The help file written with &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/11/auto-generated-documentation-for-mql5.html"&gt;Doxygen&lt;/a&gt; is in the zip or can be downloaded &lt;a href="http://users.tpg.com.au/phamsmit/VOM/VOM%20help%20V0.4.chm"&gt;here&lt;/a&gt;.&amp;nbsp; In some Windows versions this file will need to be unblocked after saving, see Windows 7 example below&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-saOoIRoJE8/S24pnPjmT3I/AAAAAAAAAGg/Bf1pyBamN78/s1600-h/Unblock.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" kt="true" src="http://3.bp.blogspot.com/_-saOoIRoJE8/S24pnPjmT3I/AAAAAAAAAGg/Bf1pyBamN78/s320/Unblock.GIF" width="251" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-1931968760664881426?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mMrT6w4jjpZ0f0fwp5r647G5PKk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mMrT6w4jjpZ0f0fwp5r647G5PKk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/mMrT6w4jjpZ0f0fwp5r647G5PKk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mMrT6w4jjpZ0f0fwp5r647G5PKk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/ambG6L-aIR4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/1931968760664881426/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/02/virtual-order-manager-v03.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1931968760664881426?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1931968760664881426?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/ambG6L-aIR4/virtual-order-manager-v03.html" title="Virtual Order Manager V0.4" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_-saOoIRoJE8/S24pnPjmT3I/AAAAAAAAAGg/Bf1pyBamN78/s72-c/Unblock.GIF" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/02/virtual-order-manager-v03.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4CSHc9eSp7ImA9WxBUFUU.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-7400212061194705386</id><published>2010-02-04T12:37:00.002+10:30</published><updated>2010-03-03T12:52:49.961+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-03T12:52:49.961+10:30</app:edited><title>Is the FrAMA Cross EA successful?</title><content type="html">In a nutshell: no, and maybe.&lt;br /&gt;
&lt;br /&gt;
No-one was more surprised than me when I plucked a simple strategy out of the air to develop my MQL5 coding skills, and it actually showed some promise. This is the FrAMA Cross EA, which simply uses a moving average cross on a 1H EURUSD chart with the Fractal Moving Average indicator that comes with MT5. The two MA periods are 6 and 12, with a fixed stoploss of 50 pips. Each cross event reverses the direction of the trade.&amp;nbsp; My original blogpost&amp;nbsp;for this EA is &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/10/my-first-mql5-expert-advisor.html"&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
In the absence of a strategy tester for MT5 so far, and witnessing the promising equity curve in the forward tests, I decided to code the FrAMA indicator into MT4 and backtest it. The formula is well documented under the Analytics section of the MT5 terminal help file.&lt;br /&gt;
&lt;br /&gt;
So &lt;a href="http://users.tpg.com.au/phamsmit/MQL4/FrAMA.mq4"&gt;here's an MT4 custom FrAMA indicator&lt;/a&gt;, which gave me the satisfaction of behaving exactly the same as its MT5 counterpart.&lt;br /&gt;
&lt;br /&gt;
I wasn't particularly surprised to see that the backtest using the above parameters is rather poor.&amp;nbsp; The equity curve from 1/1/2004 to now is like this:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_-saOoIRoJE8/S2rHK52apzI/AAAAAAAAAGY/R8TZJW7a7CI/s1600-h/StrategyTester.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="97" kt="true" src="http://2.bp.blogspot.com/_-saOoIRoJE8/S2rHK52apzI/AAAAAAAAAGY/R8TZJW7a7CI/s400/StrategyTester.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Maybe there's some tweaking that can be done - there is an extended profitable period from last August - but I'm not going to bother because it tends to reinforce my experience that H1 charts are very difficult to trend-trade.&lt;br /&gt;
&lt;br /&gt;
Not to be deterred, I set about optimising the parameters using the MT4 strategy tester. There are lots of ways to trend-trade Daily charts - is this another one? The answer is, as is usually the case with optimisation of EAs on daily charts, "maybe". Here's an optimised backtest of a FrAMA Cross EA on a Daily EURUSD chart with Fractal MA periods set to 2 and 58, ending at 31/12/2008.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_-saOoIRoJE8/S2orccJU8UI/AAAAAAAAAGI/cGmq-5qkQXw/s1600-h/StrategyTester.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="97" kt="true" src="http://2.bp.blogspot.com/_-saOoIRoJE8/S2orccJU8UI/AAAAAAAAAGI/cGmq-5qkQXw/s400/StrategyTester.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
… and here is the out of sample 1/1/2009 to present.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_-saOoIRoJE8/S2orkApBQWI/AAAAAAAAAGQ/QcEQTuIPYog/s1600-h/StrategyTester1.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="97" kt="true" src="http://2.bp.blogspot.com/_-saOoIRoJE8/S2orkApBQWI/AAAAAAAAAGQ/QcEQTuIPYog/s400/StrategyTester1.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
In case anyone is wondering, this is a legitimate use of the open-prices-only model for backtesting, because the EA gets its entry and exit signals from events detected in the previous completed bar. If you want to wait for half an hour, a 90% modelling backtest of every tick will look the same, and an EA of this type will behave almost to the dollar the same in live trading&amp;nbsp;as it does in backtests. But notice that I didn't say that it will necessarily be as profitable - optimisation of daily charts introduces a big fluke factor, caused by the fact that the total number of trades is statistically too small.&lt;br /&gt;
&lt;br /&gt;
So where to from here? Before even considering trading them live, I usually mothball EAs of this type for at least a year, dust them off, and see how they would have performed. With the massive peak in volatility from the GFC well behind us, maybe it's time to get into long term trend trading again. In the meantime, you can &lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/FrAMA_Cross_EA_VOM.gif"&gt;watch grass grow&lt;/a&gt; (average 1 trade every 3 weeks!) with the &lt;a href="http://users.tpg.com.au/phamsmit/VOM/Virtual%20Order%20Manager%20V0.5.zip"&gt;VOM version of the EA&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-7400212061194705386?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/LsUle6VSIXFUjZrNdqAow4N2sGA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/LsUle6VSIXFUjZrNdqAow4N2sGA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/LsUle6VSIXFUjZrNdqAow4N2sGA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/LsUle6VSIXFUjZrNdqAow4N2sGA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/7mjMXfjk7nU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/7400212061194705386/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/02/is-frama-cross-ea-successful.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7400212061194705386?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7400212061194705386?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/7mjMXfjk7nU/is-frama-cross-ea-successful.html" title="Is the FrAMA Cross EA successful?" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_-saOoIRoJE8/S2rHK52apzI/AAAAAAAAAGY/R8TZJW7a7CI/s72-c/StrategyTester.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/02/is-frama-cross-ea-successful.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4HR3s4cCp7ImA9WxBXFUQ.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-3739808968829444375</id><published>2010-01-27T23:56:00.001+10:30</published><updated>2010-01-27T23:58:56.538+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-27T23:58:56.538+10:30</app:edited><title>Getting there with the VOM</title><content type="html">I've made a number of significant changes to the VOM code, and things are looking better.&lt;br /&gt;
&lt;br /&gt;
Here's a shot of six "Random Loser" EAs using the VOM.&amp;nbsp; At the beginning of each 1M candle, they toss a coin and either enter EURUSD long or short, up to a maximum of three open virtual orders.&amp;nbsp; I designed them to be a stringent test of the VOM because it has to handle&amp;nbsp;six virtual order requests at once.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Although 18 virtual orders in total are open, there is only&amp;nbsp;the one position open at sell 0.2 lots, which is the sum of all the virtual orders.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_-saOoIRoJE8/S2A9rVe55zI/AAAAAAAAAF4/6ZKIADXGl6U/s1600-h/Capture.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="344" mt="true" src="http://1.bp.blogspot.com/_-saOoIRoJE8/S2A9rVe55zI/AAAAAAAAAF4/6ZKIADXGl6U/s640/Capture.GIF" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
The two real VOM EAs that I mentioned in a recent post have now started trading properly, with screen shots being updates, so that's more of a real-word test.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-3739808968829444375?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/LwS7Gp2RAmc22Mr--8vYSdNRD5Q/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/LwS7Gp2RAmc22Mr--8vYSdNRD5Q/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/LwS7Gp2RAmc22Mr--8vYSdNRD5Q/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/LwS7Gp2RAmc22Mr--8vYSdNRD5Q/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/-Xpx0emLtlE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/3739808968829444375/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/01/getting-there-with-vom.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3739808968829444375?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3739808968829444375?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/-Xpx0emLtlE/getting-there-with-vom.html" title="Getting there with the VOM" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_-saOoIRoJE8/S2A9rVe55zI/AAAAAAAAAF4/6ZKIADXGl6U/s72-c/Capture.GIF" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/01/getting-there-with-vom.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUQHQn47eyp7ImA9WxBQFk4.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-1670375592985251158</id><published>2010-01-16T19:45:00.001+10:30</published><updated>2010-01-16T19:45:33.003+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-16T19:45:33.003+10:30</app:edited><title>VOM update</title><content type="html">Well, it turned out to be a bit ambitious to put the VOM V0.2 out there for people to have a look at.&amp;nbsp; I've had hassles with MT5 build 238, which continually crashed (blew up, atomic bomb&amp;nbsp;style - aka U238?).&amp;nbsp;&amp;nbsp;That's now fixed I think with build 239.&amp;nbsp; Also I'm having to look very closely at resource locking, because multiple VOMs are becoming tangled when ticks arrive rapidly.&amp;nbsp; I could have sworn that I tested all of that before, and maybe I did and the new builds are behaving differently.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Instead of trying to do something with real EA strategies, I've written a really simple EA that I call "Random_loser" to test the locking process.&amp;nbsp; 5% of the time it buys; 5% it sells, and the rest it does nothing!&amp;nbsp; Interesting to watch two of them trading together.&lt;br /&gt;
&lt;br /&gt;
Anyhow, with the market closed and no strategy tester yet, I'll be waiting until next week to take another look, which is probably a good thing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-1670375592985251158?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Jiyytp0UE1KirMT-DWqYPlH9ks0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Jiyytp0UE1KirMT-DWqYPlH9ks0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Jiyytp0UE1KirMT-DWqYPlH9ks0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Jiyytp0UE1KirMT-DWqYPlH9ks0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/UMVowFmD-3M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/1670375592985251158/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/01/vom-update.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1670375592985251158?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1670375592985251158?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/UMVowFmD-3M/vom-update.html" title="VOM update" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/01/vom-update.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkUFQXw-cSp7ImA9WxBQE00.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-3135188539395208329</id><published>2010-01-09T20:48:00.005+10:30</published><updated>2010-01-12T23:13:30.259+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-12T23:13:30.259+10:30</app:edited><title>Testing the Virtual Order Manager with hedging orders from two EAs</title><content type="html">I have written several times before about writing a Virtual Order Manager to enable hedged trades in MetaTrader 5.&amp;nbsp; Well, it's been "complete" for about three weeks,&amp;nbsp;but what I underestimated was the amount of testing required.&amp;nbsp; Nonetheless, I feel it's getting close to release V0.1 time (even this will contain plenty of bugs, I'm sure), so for those who are interested I am publishing a forward test of two EAs re-written to run on it.&amp;nbsp; &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The Support Resistance EA&amp;nbsp;which I wrote about &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/08/support-resistance-ea-v60.html"&gt;in August 2009&lt;/a&gt;&amp;nbsp;and which I have been forward testing for some time on MT4.&amp;nbsp; You can download the MQL5 VOM code for this &lt;a href="http://users.tpg.com.au/phamsmit/VOM/Support_Resistance_EA_VOM.mq5"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;My first MT5 EA, the FrAMA Cross EA, which I wrote about &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/10/my-first-mql5-expert-advisor.html"&gt;in October 2009&lt;/a&gt;.&amp;nbsp; You can download the MQL5 VOM code for this &lt;a href="http://users.tpg.com.au/phamsmit/VOM/FraMa_Cross_EA_VOM.mq5"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;Here is a &lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/StatementDetailed.htm"&gt;forward test&lt;/a&gt; of both EAs running on the one account.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/FrAMA_Cross_EA_VOM.gif"&gt;Live screenshot&lt;/a&gt; for FrAMA_Cross_EA_VOM&lt;/li&gt;
&lt;li&gt;&lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/Support_Resistance_EA_VOM.gif"&gt;Live screenshot&lt;/a&gt; for Support_Resistance_EA_VOM&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;True to my &lt;a href="http://www.mql5.com/en/articles/12"&gt;article&lt;/a&gt; published on MQL5.com about auto-generating documentation from MQL5 code, here is the &lt;a href="http://users.tpg.com.au/phamsmit/VOM/VOM%20help%20V0.2.chm"&gt;draft VOM manual created using Doxygen&lt;/a&gt;.&amp;nbsp; Note that you will need to right-click / save this file on your PC (eg in the MetaTrader 5/Help folder) to view it.&amp;nbsp; Here are three pictures from the manual which set the scene -&amp;nbsp;the manual discusses them in some detail:&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;Firstly, a diagram of how an EA interfaces to the VOM&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-saOoIRoJE8/S0hWjWOQaCI/AAAAAAAAAFc/hxaDZyCpLAE/s1600-h/Slide2.BMP" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://4.bp.blogspot.com/_-saOoIRoJE8/S0hWjWOQaCI/AAAAAAAAAFc/hxaDZyCpLAE/s400/Slide2.BMP" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;Secondly, a diagram of the VOM modules&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-saOoIRoJE8/S0hW2BuhIVI/AAAAAAAAAFk/1ospyuxXvF0/s1600-h/Slide3.BMP" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://4.bp.blogspot.com/_-saOoIRoJE8/S0hW2BuhIVI/AAAAAAAAAFk/1ospyuxXvF0/s400/Slide3.BMP" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;... and lastly a screenshot of the VOM tester EA that I have been using to put it through its paces&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-saOoIRoJE8/S0hXQ5KpTbI/AAAAAAAAAFs/xzxztkOA6RA/s1600-h/VOM1.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://3.bp.blogspot.com/_-saOoIRoJE8/S0hXQ5KpTbI/AAAAAAAAAFs/xzxztkOA6RA/s640/VOM1.GIF" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;Here are all the &lt;a href="http://users.tpg.com.au/phamsmit/VOM/Virtual%20Order%20Manager%20V0.2.zip"&gt;Virtual Order Manager files in beta V0.2&lt;/a&gt;.&lt;br /&gt;
It's been a very&amp;nbsp;interesting exercise in MQL5 programming and I welcome readers' comments.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-3135188539395208329?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_BLs_K-N07WtwOVf_VX1U9mtP38/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_BLs_K-N07WtwOVf_VX1U9mtP38/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_BLs_K-N07WtwOVf_VX1U9mtP38/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_BLs_K-N07WtwOVf_VX1U9mtP38/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/SrK2dm_On4s" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/3135188539395208329/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2010/01/testing-virtual-order-manager-with.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3135188539395208329?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/3135188539395208329?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/SrK2dm_On4s/testing-virtual-order-manager-with.html" title="Testing the Virtual Order Manager with hedging orders from two EAs" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_-saOoIRoJE8/S0hWjWOQaCI/AAAAAAAAAFc/hxaDZyCpLAE/s72-c/Slide2.BMP" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2010/01/testing-virtual-order-manager-with.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEcAQ3c4fCp7ImA9WxBTFko.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-7245762550099907865</id><published>2009-12-13T13:07:00.003+10:30</published><updated>2009-12-13T13:10:42.934+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-13T13:10:42.934+10:30</app:edited><title>A crude "API" for MetaTrader 4</title><content type="html">In response to Ludosm's request to publish this utility, &lt;a href="http://users.tpg.com.au/phamsmit/TradeFromCsvFile/TradeFromCsvFile.mq4"&gt;here it is&lt;/a&gt;.&amp;nbsp; Using this API, any other software can drive trade functions in MT4 by generating simple one line CSV files in a similar format to the original MQL4 trade commands.&lt;br /&gt;
&lt;br /&gt;
So where you would write the following in an EA ....&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;OrderSend(symbol, cmd, volume, price, slippage, stoploss, takeprofit, comment, magic, expiration, arrow_color);&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
.... the CSV file looks like this&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;OrderSend, symbol, cmd, volume, price, slippage, stoploss, takeprofit, comment, magic, expiration, arrow_color&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A price of&amp;nbsp;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;Bid&lt;/span&gt; or&amp;nbsp;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;Ask&lt;/span&gt; is interpreted correctly.&lt;br /&gt;
&lt;br /&gt;
An important difference is that open orders are located using their Comment, meaning that comments should have a numerical sequence.&lt;br /&gt;
&lt;br /&gt;
So &lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;OrderClose(ticket);&lt;/span&gt; becomes &lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;OrderClose,Comment&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
There are additional comments at the top of the script.&amp;nbsp; Hope it's useful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-7245762550099907865?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rAzWjDIdLWlPAQxE0KUMqq43LQ4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rAzWjDIdLWlPAQxE0KUMqq43LQ4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rAzWjDIdLWlPAQxE0KUMqq43LQ4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rAzWjDIdLWlPAQxE0KUMqq43LQ4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/V97g56sSgLs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/7245762550099907865/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/12/crude-api-for-metatrader-4.html#comment-form" title="12 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7245762550099907865?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7245762550099907865?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/V97g56sSgLs/crude-api-for-metatrader-4.html" title="A crude &quot;API&quot; for MetaTrader 4" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>12</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/12/crude-api-for-metatrader-4.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEUNSX4-eCp7ImA9WxBTEk4.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-6687667204264756513</id><published>2009-12-08T12:08:00.000+10:30</published><updated>2009-12-08T12:08:18.050+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-08T12:08:18.050+10:30</app:edited><title>1500 and counting; what's coming up</title><content type="html">Very gratifying to see that I've passed the 1500 mark with hits to this blog - thanks everyone for the interest. So that's a very modest average of 10 hits a day, although it started very slow and has risen to about 50 per day recently. As an aside, it's fascinating to be a microscopic part of the Google machine. The blog has so far had 11 ad click-throughs to generate $18.11 revenue in five months!! Keep on clicking, guys - I'll give up my day job soon :)&lt;br /&gt;
&lt;br /&gt;
In the meantime, I have lots of balls in the air with trading and coding ideas (happy as a pig in sh*t, as they say)&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;First priority - finish off an article which expands on &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/11/auto-generated-documentation-for-mql5.html"&gt;my auto-generated documentation for MQL5 post&lt;/a&gt; in this blog. The Metaquotes guys have showed an interest in it and it's likely to be published on the official MQL5 site. The last thing to finish off is a comment processor which trawls through the entire MQL5 folder and subfolders and slightly modifies the comments so that they can be read in by Doxygen and appear in the comiled help documentation.&lt;/li&gt;
&lt;li&gt;Finish off the &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/11/writing-virtual-order-manager-to-enable.html"&gt;MQL5 Virtual Order Manager&lt;/a&gt; so people can try it and comment. I've written the VOM itself, but need to polish up the EA I use to test it so it can be debugged more fully. This EA is a series of buttons in a chart window which allow real and virtual orders to be opened and closed. I'll probably release the whole lot then, but also need to follow up quickly with an indicator which reports open virtual orders in a table.&lt;/li&gt;
&lt;li&gt;The &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/09/breakout-neuro-ea-drawdown-and-work-in.html"&gt;Neural Network EA&lt;/a&gt; has been grinding along. I hit a difficult snag with the retrieval of history - other people have also complained that they can't retrieve the full history with Close[xxxxx]. My testing seems to indicate a limit of 1000 bars in the past (or is it 1024?) or only 10 days of 15 minute bars, although some others talk about a gradually increasing value of Bars but they can't work out what triggers it. The EA and associated neural network dll works well functionally, but the neural network can't be trained on a sufficiently long dataset to prove the concept. I can see two ways forward: either write a history reader which reads history directly from the MT4 *.hst files. Or, write the whole damn thing in MQL5, which I have found doesn't have the limitation. The latter will take a lot more time, but I've always had a plan to write a learning neural network in MQL5 in preparation for the trading championships in 2010, so I'm leaning that way. I wish Metaquotes would let us know when the strategy tester will become available.&lt;/li&gt;
&lt;li&gt;Allow me some (OK, a lot of) misty speculation: if an MQL5 neural network EA proves to be profitable (or any MQL5 EA), then it would be quite easy to write a MetaTrader 5 to MetaTrader 4 messaging utility to enable any MQL5 EA on demo to trade live now using MetaTrader 4. Already sitting in my MT4 code archive somewhere is a crude MT4 API EA which accepts trading commands via *.csv files.&lt;/li&gt;
&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-6687667204264756513?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RKKhNV_Ra11aghO9mAVph_NOGnE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RKKhNV_Ra11aghO9mAVph_NOGnE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RKKhNV_Ra11aghO9mAVph_NOGnE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RKKhNV_Ra11aghO9mAVph_NOGnE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/0EY4rsykgbo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/6687667204264756513/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/12/1500-and-counting-whats-coming-up.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/6687667204264756513?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/6687667204264756513?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/0EY4rsykgbo/1500-and-counting-whats-coming-up.html" title="1500 and counting; what's coming up" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/12/1500-and-counting-whats-coming-up.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEUGQX88cCp7ImA9WxNaEkQ.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-1218873059517897654</id><published>2009-11-20T15:54:00.007+10:30</published><updated>2009-11-27T13:53:40.178+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-27T13:53:40.178+10:30</app:edited><title>Writing a Virtual Order Manager to enable hedging in MetaTrader 5</title><content type="html">Since I &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/08/virtual-order-manager.html"&gt;wrote about a Virtual Order Manager in August&lt;/a&gt;, the MetaTrader 5 public beta commenced, and it has become clear that arguably the biggest change in the transition from MetaTrader 4 to MetaTrader 5 is the management of open trades as &lt;strong&gt;positions&lt;/strong&gt;. At any one time there can be one position only open for each currency pair, and the size of this position adjusts up and down each time orders are processed by the broker. Apart from anything else, this aligns with the FIFO rules recently introduced in the US which effectively outlaw hedging.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;To work in this position-centric environment, each Expert Advisor written in MQL5&amp;nbsp;needs additional programming to record which trades it has open, because it cannot find this out in a simple way from the broker. The most startling example of this would be when two EAs running against the same pair, say a scalper and a trend-follower, issue orders in opposite directions. In MT4, the result would be a long and short order with zero margin used. In MT5, no position would be open at all.&lt;br /&gt;
&lt;br /&gt;
An example of the programming challenge is in the following function. Most people would use something similar in their MT4 EAs to ensure that only one order is open at a time. A similar function would not work as intended in MT5.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;int OpenOrders(int magic)&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; int OrderCount = 0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; for (int i = OpenOrdersTotal()-1 ; i &amp;gt;= 0 ; i--)&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OrderSelect(i,SELECT_BY_POS, MODE_TRADES);&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (OrderMagicNumber() == magic&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;&amp;amp; (OrderType() == OP_BUY&amp;nbsp;|| OrderType() == OP_SELL)&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;&amp;amp; OrderSymbol() == Symbol())&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OrderCount++;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; return(OrderCount);&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;So ... here comes a Virtual Order Manager&lt;/strong&gt;&lt;br /&gt;
To work with this new order management environment I am writing a utility which I call a Virtual Order Manager, or VOM, which maintains a local record at the MetaTrader terminal of the orders issued by each EA.&lt;br /&gt;
&lt;br /&gt;
Here are the attributes of the VOM:&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Behaviour&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Real orders at the broker reflect total position for that pair, but the VOM also maintains a virtual set of orders at the MT5 terminal. As an example one EA could be virtual long EURUSD 0.2 lots and another EA could be virtual short EURUSD 0.3 lots, with the real position showing in the MT5 open orders list as short 0.1 lots.&lt;/li&gt;
&lt;li&gt;Virtual stoplosses, takeprofits, magic numbers and comments are supported. Virtual stoplosses and takeprofits can be modified&lt;/li&gt;
&lt;li&gt;Real broker stoplosses are maintained at a configurable distance away from the virtual stoplosses as disaster protection against PC or internet connection failures.&lt;/li&gt;
&lt;li&gt;Virtual entry prices, stoplosses and takeprofits can optionally be displayed as horizontal lines on the chart.&lt;/li&gt;
&lt;li&gt;[for eventual development] A virtual_statement.htm can be produced similar to the normal statement.htm which lists open orders and closed order history.&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;strong&gt;Implementation&lt;/strong&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The VOM functionality is added with an #include &lt;virtualordermanager.mqh&gt;in each EA.&lt;/li&gt;
&lt;li&gt;I am modelling the API for the VOM on MT4 trading functions. These are familiar, proven functions which will make migration from MT4 EAs easier. So instead of writing OrderSend(….), one writes VirtualOrderManager.OrderSend(…..). I have simplified some of the functions so they are not necessarily a plug-in replacement, but I may also implement the original full versions to make MT4 migration even easier.&lt;/li&gt;
&lt;li&gt;The list of open orders is maintained in a file for all VOM-enabled EAs to access. A table listing all open orders will be viewable using a OpenVirtualOrderViewer.mq5 indicator.&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;strong&gt;Challenges&lt;/strong&gt;&lt;br /&gt;
&lt;/div&gt;Some of the more challenging parts of writing the VOM are listed here&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The VOM must be able to track when a pending order activates. I am using the OnTrade() event in MT5 for this purpose.&lt;/li&gt;
&lt;li&gt;Since multiple EAs read and write to the one file listing virtual open orders, I have to use a global variable as a file locking mechanism.&lt;/li&gt;
&lt;li&gt;The value of the disaster protection stoploss is not easy to determine because it is obtained from a number of virtual orders.&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;strong&gt;Release&lt;/strong&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;So when will version 1.0 be released? I would hope within two weeks.&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-1218873059517897654?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/dKLdjKWzvq5Fh73qLn7Zn-SczpA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dKLdjKWzvq5Fh73qLn7Zn-SczpA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/dKLdjKWzvq5Fh73qLn7Zn-SczpA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dKLdjKWzvq5Fh73qLn7Zn-SczpA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/CW1eCdzrCcs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/1218873059517897654/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/11/writing-virtual-order-manager-to-enable.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1218873059517897654?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1218873059517897654?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/CW1eCdzrCcs/writing-virtual-order-manager-to-enable.html" title="Writing a Virtual Order Manager to enable hedging in MetaTrader 5" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/11/writing-virtual-order-manager-to-enable.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMFQ3Y6eip7ImA9WxNbF08.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-2491848512325666191</id><published>2009-11-17T09:16:00.002+10:30</published><updated>2009-11-21T00:10:12.812+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-21T00:10:12.812+10:30</app:edited><title>Active MQL5 sites</title><content type="html">Just thought I'd put in another plug for &lt;a href="http://metatrader5.blogspot.com/"&gt;Metatrader 5&lt;/a&gt;, which is the most active Metatrader 5 blog, hosted by miranon. The latest post &lt;a href="http://metatrader5.blogspot.com/2009/11/indicator-update-for-metatrader-5.html"&gt;Indicator Update for MT5&lt;/a&gt;&amp;nbsp;is up to his usual standard, and he has kindly pointed to some of my work on this blog as well.&lt;br /&gt;
&lt;br /&gt;
***&amp;nbsp;update 20/11/2009 *** &lt;a href="http://www.mql5.com/"&gt;http://www.mql5.com/&lt;/a&gt; is now active!&lt;br /&gt;
&lt;br /&gt;
The &lt;a href="http://www.mql5.com/ru/forum"&gt;Russian forum&lt;/a&gt;&amp;nbsp; is bound to be as active as it was in mql4 and is quite readable with &lt;a href="http://translate.google.com.au/?hl=en&amp;amp;tab=wT#ru"&gt;Google translate&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
That's about it - if you google MQL5 or Metatrader 5 or MT5 you'll find lots of other sites such as &lt;a href="http://www.forex-tsd.com/metatrader-5/"&gt;Forex-TSD&lt;/a&gt; but although there are some interesting discussions, there's not much original MQL5 code.&amp;nbsp; If anyone reading this has another site they'd like to highlight, feel free to post a comment.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-2491848512325666191?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bLOWCiX4CPs2sDp6-9ivtCQMCDM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bLOWCiX4CPs2sDp6-9ivtCQMCDM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bLOWCiX4CPs2sDp6-9ivtCQMCDM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bLOWCiX4CPs2sDp6-9ivtCQMCDM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/lWrq7c0YA2U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/2491848512325666191/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/11/active-mql5-sites.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/2491848512325666191?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/2491848512325666191?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/lWrq7c0YA2U/active-mql5-sites.html" title="Active MQL5 sites" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/11/active-mql5-sites.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C04EQXc6eyp7ImA9WxBSFE4.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-4609496869045514289</id><published>2009-11-09T23:37:00.084+10:30</published><updated>2009-12-22T08:15:00.913+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-22T08:15:00.913+10:30</app:edited><title>Auto-generated documentation for MQL5 code</title><content type="html">I submitted this blog entry to Metaquotes when I wrote it, and I'm pleased to announce that they have now &lt;a href="http://www.mql5.com/en/articles/12"&gt;published it on the MQL5.com site&lt;/a&gt;.&lt;br /&gt;
The article includes a very useful &lt;a href="http://p.mql5.com/data/2/12/1/Doxygen_files.zip"&gt;MQL5 source code help file&lt;/a&gt; which I intend to update from time to time when new code is released. &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Here's the introduction&lt;/strong&gt;:&lt;br /&gt;
&lt;br /&gt;
Most Java coders will be familiar with the auto-generated documentation that can be created with JavaDocs. The idea is to add comments into the code in a semi-structured way that can then be extracted into an easy to navigate help file.&lt;br /&gt;
&lt;br /&gt;
The C++ world also has a number of documentation auto-generators, with Microsoft's SandCastle and Doxygen being two leaders. I decided to see how well Doxygen could document MQL5, which is in essence a customised subset of C++. To me this is an important step in the maturity of MQL5, because the complexity of the language is easily capable of fostering some quite large class libraries.&lt;br /&gt;
&lt;br /&gt;
The experiment worked very well and I believe the help documentation that Doxygen produces from MQL5 code will add a great deal of value.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-4609496869045514289?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xUTTo-9sYuKOsCSdiOeOx0Dlhe8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xUTTo-9sYuKOsCSdiOeOx0Dlhe8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xUTTo-9sYuKOsCSdiOeOx0Dlhe8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xUTTo-9sYuKOsCSdiOeOx0Dlhe8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/yC62MC6fpzg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/4609496869045514289/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/11/auto-generated-documentation-for-mql5.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/4609496869045514289?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/4609496869045514289?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/yC62MC6fpzg/auto-generated-documentation-for-mql5.html" title="Auto-generated documentation for MQL5 code" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/11/auto-generated-documentation-for-mql5.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkcBQn8ycCp7ImA9WxNUFE8.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-7955104840695325416</id><published>2009-11-05T22:43:00.004+10:30</published><updated>2009-11-05T22:57:33.198+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-05T22:57:33.198+10:30</app:edited><title>NewsTrader</title><content type="html">I was looking through my blog posts (yeah, I know, I'm about the only one who does) and I noticed that &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/08/any-observer-of-forex-market-quickly.html"&gt;back a while&lt;/a&gt; I had promised a longer description of my NewsTrader. &amp;nbsp;V2.3 has been&lt;a href="http://users.tpg.com.au/phamsmit/NewsTrader%20V2_3/statement.htm"&gt; forward testing &lt;/a&gt;for quite a while now (since 4th September), and has made the princely sum of $82. &amp;nbsp;This was on a ridiculously small (for a news trader) lot size of 0.1, so I've just bumped it up to a more reasonable 1.0. &amp;nbsp;With a stoploss of 10 pips this gives a nominal risk of $100 per trade, although I have seen absolutely massive slippage on news in the 30 pip range. &amp;nbsp;Many traders really get upset by things like that, but with my IT background I've no real problem with it. &amp;nbsp;Big news events would stress the forex trading network in such a fundamental way that it's not surprising that serious overloads occur.&lt;br /&gt;
&lt;br /&gt;
Anyway, NewsTrader V2_3 reads the news events from the &lt;a href="http://cloud.forexfactory.com/ffcal_week_this.xml"&gt;weekly XML list&lt;/a&gt; kindly supplied by &lt;a href="http://www.forexfactory.com/index.php?page\x3dcalendar"&gt;ForexFactory&lt;/a&gt;, and issues a very tight straddle just before each medium or high impact event. &amp;nbsp;What's a straddle? &amp;nbsp;It's a BuyStop / SellStop pair that is able to profit from a clean move in either direction. &amp;nbsp;If you look at the forward test, you'll see a number of indications of how this trader works:-&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Large numbers of deleted stop orders. &amp;nbsp;This is when the price didn't immediately react to the news at all.&lt;/li&gt;
&lt;li&gt;Stopped out orders at -10 pips. &amp;nbsp;This is when a spike in one direction preceeds the real direction of the move.&lt;/li&gt;
&lt;li&gt;Closed orders in loss. &amp;nbsp;I have a timestop which from memory closes the orders after about 2 minutes (yes these trades are &lt;i&gt;&lt;b&gt;short!&lt;span style="font-style: normal;"&gt;&lt;span style="font-weight: normal;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;And, wonder of wonders, a number of profitable orders which hit the TP of 10 pips&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;b&gt;NewsTrader V2_4&lt;/b&gt;&lt;br /&gt;
When I first wrote NewsTrader I was trading from my laptop in Australia. &amp;nbsp;I've made &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/08/running-mt4-on-virtual-host.html"&gt;other comments&lt;/a&gt; about the ping times between Australia and the US: suffice to say the theory of News Trading is greatly undermined by network latency across the Pacific. &amp;nbsp;With the use of &lt;a href="http://paulsfxrandomwalk.blogspot.com/2009/08/running-mt4-on-virtual-host.html"&gt;my virtual host&lt;/a&gt; in New York, I've now reinstated my original code which worked so badly in practice, which was a very tight client-side trailing stoploss. &amp;nbsp;I'm running 4 pips at the moment. &amp;nbsp;You wouldn't&amp;nbsp;believe&amp;nbsp;how long it takes for a MetaTrader 4 terminal in Australia to deliver tick updates and do something trivial like close an order.&lt;br /&gt;
&lt;br /&gt;
So that's it: NewsTrader V2_4 is NewsTrader V2_3 with a trailing stoploss of 4 pips and a takeprofit of 30 pips (which will not normally be hit). &amp;nbsp;It remains to be seen how much better it will work on the faster network. &amp;nbsp;&lt;a href="http://users.tpg.com.au/phamsmit/NewsTrader%20V2_4/statement.htm"&gt;Forward tested here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
When I get a moment I might add auto screendumps of the news events as they occur.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-7955104840695325416?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ISgh0ePKOcsIZkTqcvjDiTuUAOk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ISgh0ePKOcsIZkTqcvjDiTuUAOk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ISgh0ePKOcsIZkTqcvjDiTuUAOk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ISgh0ePKOcsIZkTqcvjDiTuUAOk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/wjUJpTW6G9c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/7955104840695325416/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/11/newstrader.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7955104840695325416?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/7955104840695325416?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/wjUJpTW6G9c/newstrader.html" title="NewsTrader" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/11/newstrader.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QGQ3w5cCp7ImA9WxBQEkQ.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-5938095368110377587</id><published>2009-10-26T23:33:00.014+10:30</published><updated>2010-01-12T22:58:42.228+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-12T22:58:42.228+10:30</app:edited><title>My first MQL5 Expert Advisor</title><content type="html">&lt;div style="text-align: left;"&gt;&lt;em&gt;Update 12/1/2010: this forward test now replaced with a Virtual Order Manager equivalent coexisting with the Support_Resistance EA.&amp;nbsp; See statement &lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/StatementDetailed.htm"&gt;here&lt;/a&gt; and live screenshot &lt;a href="http://users.tpg.com.au/phamsmit/MT5%20test1/Frama_Cross_EA_VOM.gif"&gt;here&lt;/a&gt;.&amp;nbsp; All links below are still valid.&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;
This EA is a Moving Average Cross system using the Fractal Adaptive Moving Average. &amp;nbsp;It is almost certainly not a&amp;nbsp;profitable&amp;nbsp;EA - I've just used a simple system like this as an&amp;nbsp;exercise&amp;nbsp;in learning MT5. &amp;nbsp;Give it to me to code in MT4 and I'd have it done in literally 15 minutes, but this has taken me on an off about a week to code.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
I decided to write an EA that is triggered using an indicator to really understand how things work. &amp;nbsp;The FraMa Cross indicator is &lt;a href="http://users.tpg.com.au/phamsmit/MQL5/FraMa%20cross.mq5"&gt;here&lt;/a&gt;, and includes arrows showing long and short entries. &amp;nbsp;The default MA periods are 6 and 12.&lt;br /&gt;
&lt;br /&gt;
There are various ways to code an always-in-the-market reversing EA such as this in MT5. &amp;nbsp;I simply reverse the position by sending an order for double the lots in the opposite direction, which illustrates one of the &amp;nbsp;largest differences between MT4 and MT5.&lt;br /&gt;
&lt;br /&gt;
Files needed for this EA to compile and run:&lt;br /&gt;
&lt;a href="http://users.tpg.com.au/phamsmit/MQL5/FraMa%20cross%20EA%20V1_2.mq5"&gt;FraMa cross EA V1_2.mq5&lt;/a&gt; - the Expert Advisor itself. Store in MQL5/Experts&lt;br /&gt;
&lt;a href="http://users.tpg.com.au/phamsmit/MQL5/FraMa%20cross.mq5"&gt;FraMa cross.mq5&lt;/a&gt; - the indicator. &amp;nbsp;Store in MQL5/Indicators&lt;br /&gt;
&lt;a href="http://users.tpg.com.au/phamsmit/MQL5/EnumToStr.mqh"&gt;EnumToStr.mqh&lt;/a&gt; - contains lookup tables for a couple of enums. &amp;nbsp;Store in MQL5/Include&lt;br /&gt;
&lt;a href="http://users.tpg.com.au/phamsmit/MQL5/SimpleLog.mqh"&gt;SimpleLog.mqh&lt;/a&gt; - logging utitlity that I used to debug. &amp;nbsp;Store in MQL5/Include&lt;br /&gt;
&lt;br /&gt;
Here is the statement of a &lt;a href="http://users.tpg.com.au/phamsmit/MT6%20FraMa%20Cross%20EA/StatementDetailed.htm"&gt;live forward test&lt;/a&gt;, which is running on a EURUSD H1 chart with FastMA 6 and SlowMA 12.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-saOoIRoJE8/SudgfKN258I/AAAAAAAAAEY/3-hFkEMmCmA/s1600-h/FraMa%2520cross%2520EA.gif" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_-saOoIRoJE8/SudgfKN258I/AAAAAAAAAEY/3-hFkEMmCmA/s320/FraMa%2520cross%2520EA.gif" vr="true" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;[update] and &lt;a href="http://users.tpg.com.au/phamsmit/MT5%20FraMa%20Cross%20EA/FraMa%20Cross%20EA%20V1_2.gif"&gt;here's a screenshot updated every 10 minutes&lt;/a&gt;.&amp;nbsp; You may need to use refresh on your browser to see updates (the picture&amp;nbsp;to the left&amp;nbsp;is an example only and doesn't update)&lt;br /&gt;
&lt;br /&gt;
[update 2] I have uploaded a new version of the EA. It suddenly stopped working properly because I had made an error by not initialising a double in OpenLots(). &amp;nbsp;A recent MT5 update must have stopped automatically initialising doubles.&lt;br /&gt;
&lt;br /&gt;
[update 3]&amp;nbsp; The EA hasn't been working for a while - must have been a new build which broke it for some reason.&amp;nbsp; So I've recompiled after re-writing some of the code, such as OpenLots() (which doesn't need to loop through all positions as I'd orinally written it), and introducing a more versatile function called AdjustPosition().&amp;nbsp; The code is updated as &lt;a href="http://users.tpg.com.au/phamsmit/MQL5/FraMa%20cross%20EA%20V1_2.mq5"&gt;Frama Cross EA V1_2.mq5&lt;/a&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-5938095368110377587?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/NjIC5E2OYC_d_1joVzKaXZXAwzU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/NjIC5E2OYC_d_1joVzKaXZXAwzU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/NjIC5E2OYC_d_1joVzKaXZXAwzU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/NjIC5E2OYC_d_1joVzKaXZXAwzU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/EFauZsvdWfo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/5938095368110377587/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/10/my-first-mql5-expert-advisor.html#comment-form" title="11 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/5938095368110377587?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/5938095368110377587?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/EFauZsvdWfo/my-first-mql5-expert-advisor.html" title="My first MQL5 Expert Advisor" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_-saOoIRoJE8/SudgfKN258I/AAAAAAAAAEY/3-hFkEMmCmA/s72-c/FraMa%2520cross%2520EA.gif" height="72" width="72" /><thr:total>11</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/10/my-first-mql5-expert-advisor.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMNQ3g-cCp7ImA9WxNWFkQ.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-5227209185176142773</id><published>2009-10-16T22:13:00.002+10:30</published><updated>2009-10-16T22:14:52.658+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-16T22:14:52.658+10:30</app:edited><title>My first MQL5 coding impressions</title><content type="html">MQL5 is in beta test, and I've been playing around with it for a few hours to see what it's like.&amp;nbsp; It's great fun, and I can see the enormous potential for MetaTrader 5.&lt;br /&gt;
&lt;br /&gt;
I know MetaTrader 4 backwards, and am also reasonably experienced in C++, but&amp;nbsp;there is much&amp;nbsp;in MQL5 that needs to be learnt.&amp;nbsp; The trading functions are completely different, and so is the coding of indicators.&amp;nbsp; It's not particularly useful to import MQL4 code into the MQL5 editor and attempt to convert it inline because the conversion needs to touch on the entire coding structure.&amp;nbsp; The search is on for the equivalents to anything that doesn't exist, like IsOptimization() or TimeToStr().&amp;nbsp; Other functions exist but need to be used differently, like StringConcatenate.&lt;br /&gt;
&lt;br /&gt;
I guess one could write a whole lot of pseudo MT4 function calls such as this&lt;br /&gt;
bool IsTesting()&lt;br /&gt;
{ &lt;br /&gt;
&amp;nbsp; return(MQL5_TESTING);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
This may assist in converting MQL4 code, but it's probably simpler to re-write the simpler ones.&lt;br /&gt;
&lt;br /&gt;
A startling change is that all inbuilt indicators return a handle, not a value. This handle is then used to copy results to an array. The reason for this is to make it easier and more efficient to code indicators of indicators.&lt;br /&gt;
&lt;br /&gt;
Here's &lt;a href="http://www.users.tpg.com.au/phamsmit/mql5/Frama%20cross.mq5"&gt;my first indicator&lt;/a&gt;.&amp;nbsp; The new concept in indicators is OnCalculate(), which is called for each new tick.&amp;nbsp; For some weird reason the arrays in OnCalculate are from left to right.&amp;nbsp; This indicator&amp;nbsp;I wrote shows a fast and slow Fractal Moving Average (FRAMA) and places arrows at the open of each bar following an MA cross event.&lt;br /&gt;
&lt;br /&gt;
I'm now working thorugh the complexities of which bar is which to use this indicator to control an Expert Advisor.&lt;br /&gt;
&lt;br /&gt;
Here's a &lt;a href="http://www.users.tpg.com.au/phamsmit/MQL5/EnumToStr.mqh"&gt;useful MQH include file&lt;/a&gt; which converts error codes and OrderSend results to strings.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-5227209185176142773?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DiPPMbr86a46qb6bmSeNBTPdW3s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DiPPMbr86a46qb6bmSeNBTPdW3s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DiPPMbr86a46qb6bmSeNBTPdW3s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DiPPMbr86a46qb6bmSeNBTPdW3s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/RkYeeXkUciw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/5227209185176142773/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/10/my-first-mql5-coding-impressions.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/5227209185176142773?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/5227209185176142773?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/RkYeeXkUciw/my-first-mql5-coding-impressions.html" title="My first MQL5 coding impressions" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/10/my-first-mql5-coding-impressions.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQDSXk7fCp7ImA9WxNWFEw.&quot;"><id>tag:blogger.com,1999:blog-4287178386023865464.post-1854771528030092441</id><published>2009-10-13T17:16:00.001+10:30</published><updated>2009-10-13T17:16:18.704+10:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-13T17:16:18.704+10:30</app:edited><title>The public beta for MetaTrader 5 has begun</title><content type="html">You can download MetaTrader 5 &lt;a href="http://www.metaquotes.ru/files/mt5setup.exe"&gt;here&lt;/a&gt;. &amp;nbsp;I recommend following the &lt;a href="http://forum.mql4.com/26550"&gt;public beta thread&lt;/a&gt; directly on the mql4 forum. &amp;nbsp;At this stage, mql5.com is still inactive.&lt;br /&gt;
&lt;br /&gt;
I have successfully downloaded MT5 and connected to the demo server. &amp;nbsp;Two points to assist:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The name field in the Open Account dialogue must be two words, implying first name and surname.&lt;/li&gt;
&lt;li&gt;The compiled help file for MetaEditor is in Russian only at the moment. &amp;nbsp;fai on the mql4 forum has kindly translated it into English using Google Translate. &amp;nbsp;Open up &lt;a href="http://forum.mql4.com/c/forum/2009/10/mql5_google2.chm.zip"&gt;this zip file&lt;/a&gt;&amp;nbsp;and copy the contents as mql5.chm into .\MetaTrader 5\help. &amp;nbsp;You may need to be a member of the forum to do this.&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4287178386023865464-1854771528030092441?l=paulsfxrandomwalk.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/IVXTErVNer_P2__hs6h2QtSoziE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IVXTErVNer_P2__hs6h2QtSoziE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/IVXTErVNer_P2__hs6h2QtSoziE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IVXTErVNer_P2__hs6h2QtSoziE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/OQAx/~4/ES3sRfuuaS4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://paulsfxrandomwalk.blogspot.com/feeds/1854771528030092441/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://paulsfxrandomwalk.blogspot.com/2009/10/public-beta-for-metatrader-5-has-begun.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1854771528030092441?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4287178386023865464/posts/default/1854771528030092441?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/OQAx/~3/ES3sRfuuaS4/public-beta-for-metatrader-5-has-begun.html" title="The public beta for MetaTrader 5 has begun" /><author><name>Paul</name><uri>http://www.blogger.com/profile/15599532258421093741</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="21" height="32" src="http://1.bp.blogspot.com/_-saOoIRoJE8/SwuNFeSug5I/AAAAAAAAAEk/YEflZTPpkJQ/S220/escher.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://paulsfxrandomwalk.blogspot.com/2009/10/public-beta-for-metatrader-5-has-begun.html</feedburner:origLink></entry></feed>

