fxDreema

    • Register
    • Login
    • Search
    • Back to the main page
    • Categories
    • Recent
    • Tags
    • Popular
    • Search
    1. Home
    2. fxDreema
    3. Posts
    • Profile
    • Following 0
    • Followers 691
    • Topics 32
    • Posts 7485
    • Best 277
    • Controversial 18
    • Groups 1

    Posts made by fxDreema

    • RE: Question to community: duration of optimization attached EA

      This is so strange that I found that MT4 is so slow in the moment when MT4 is ready to be trashed 😮

      Here is what I'm talking about: http://forum.mql4.com/59477
      The newest MT4 is actually Build 568 from 26 Dec 2013 and here is how to get it:

      • Try to login, with server field set to demo.metaquotes.net:444 (with no success)
      • Apply for a new account, with the demo.metaquotes.net:444 server selected.
      • Shut down the terminal. Reopen this installation of terminal. Update of beta commences and you'll get the new beta installed.

      If needed, restart it once more. What is different now is that experts are located in "MQL4/Experts" folder, so I'm gonna make fxDreema aware of that. I still don't know what problems can come from that MT4 update, but at least I checked function calls - they are normally fast!

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Question to community: duration of optimization attached EA

      I ran some benchmarks in MT4 and MT5 and I have some interesting results. Here are the codes I used, scroll down for results.

      int i=0;
      int max=15000000;
      int t0=0;
      int a=1, b=2, c=3;
      
      int init() {
      
         //-- test 1
         t0=GetTickCount();
         for (i=0; i<max; i++) {
            c=a+b;
         }
         Print("test 1: "+(GetTickCount()-t0)+"ms");
         
         //-- test 2
         t0=GetTickCount();
         for (i=0; i<max; i++) {
            c=a()+b();
         }
         Print("test 2: "+(GetTickCount()-t0)+"ms");
         
         
         //-- test 4
         t0=GetTickCount();
         for (i=0; i<max; i++) {
            a();
            b();
            a();
            b();
            a();
            b();
            a();
            b();
            a();
            b();
         }
         Print("test 3: "+(GetTickCount()-t0)+"ms");
      }
      int start() {}
      
      int a() {return(1);}
      int b() {return(2);}
      
      int i=0;
      int max=15000000;
      uint t0=0;
      int a=1, b=2, c=3;
      
      int OnInit() {
      
         
         //-- test 1
         t0=GetTickCount();
         for (i=0; i<max; i++) {
            c=a+b;
         }
         Print("test 1: "+(string)(GetTickCount()-t0)+"ms");
         
         //-- test 2
         t0=GetTickCount();
         for (i=0; i<max; i++) {
            c=a()+b();
         }
         Print("test 2: "+(string)(GetTickCount()-t0)+"ms");
         
         //-- test 3
         t0=GetTickCount();
         for (i=0; i<max; i++) {
            a();
            b();
            a();
            b();
            a();
            b();
            a();
            b();
            a();
            b();
         }
         Print("test 3: "+(string)(GetTickCount()-t0)+"ms");
         
         return(0);
      }
      
      int a() {return(1);}
      int b() {return(2);}
      
      

      I tested what time it takes for an EA to run some functions in a year. I found that there are 11-15 million ticks in a year, at least in one of my MT4 installations (not to mention holes in the history data).

      Both codes are identical, so these tests are the same for MT4 and MT5. Here are the results:

      MetaTrader 4:
      test1: 171 ms
      test2: 2886 ms
      test3: 12215 ms

      MetaTrader 5:
      test1: 47 ms
      test2: 47 ms
      test3: 62 ms

      It looks that MetaTrader 4 loses HUGE amount ot time just to call some functions. In comparison MetaTrader 5 is as fast as it can, there is virtually no matter how many functions do you call in the EA. And these functions are just empty functions that does nothing, if they have to do something it gets even worse for MT4!

      I decided that my MT4 installation could be corrupted, so I tested this on other installations, on other Windows with fresh MT4 installation, even on older MT4 build - it's the same.

      fxDreema is using many many non-empty functions. I didn't expect that MT4 can be so slow in this simple task.

      In any case, I really want someone to try this as well, just to compare the results. Maybe my MT4 does not feel good on my PC, I don't know.

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Upload custom indicator

      Work with Candle ID > 0. Click on this "More settings" text to see this option. It looks that for the current candle there is no information that can be used, but for already finished candles there is. I think more custom indicators should be like this 🙂

      posted in Bug Reports
      fxDreema
      fxDreema
    • RE: Upload custom indicator

      I know there is a problem of registering the number of buffers sometimes, but they can be manually added and this should work. Buffer names does not matter, so it's enough to have some buffers there. Variables looks to be ok for this indicator.

      What if you test this indicator with "Indicator tester" block? Are there error messages in MetaTrader?

      posted in Bug Reports
      fxDreema
      fxDreema
    • RE: Something say to a new update

      I fixed that with the Candle ID parameter. But the other one, the problem with connections... I can't replicate it, it works for me. If you know what action/actions can I do to see the problem? 🙂

      posted in Bug Reports
      fxDreema
      fxDreema
    • RE: Something say to a new update

      And more bugs are expected. The reason is that when I started this I was not very good programmer and I wrote code here and there just to make things work, and now that there are many registered users it's difficult to reorganize everything in a better way while keeping old things to work. In other words, I stuck in my own code 😕

      posted in Bug Reports
      fxDreema
      fxDreema
    • RE: Wish list - point format

      Yes, I added this new functionality, but it is for the web version at the moment. I will make new local build when bugs from the last update disappear 😕 They are almost gone.

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Simpler Way Than Using 8 Blocks?

      MetaEditor is much more flexible and you can find support from other programmers in mql4.com and mql5.com 😉

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Absolute Value Function

      There are no conversion blocks, but the native MQL4 functions are not hard to use:
      http://docs.mql4.com/math/mathabs

      MathAbs(3-5) should give you 2.

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Simpler Way Than Using 8 Blocks?

      post/4947

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Simpler Way Than Using 8 Blocks?

      Now this option controls the point format for any symbol, so if you have single trailing stop with TS = 10 pips, these 10 pips will be different for each symbol, depending on these settings.

      Otherwise the point format itself, the real one can be get from this MQL4 function:

      MarketInfo(Symbol(), MODE_POINT) 
      

      this gives you value like 0.00001

      or if you want value that says the number of digits:

      MarketInfo(Symbol(), MODE_DIGITS)
      

      this gives tou value like 5

      or to get the modified point format according the rules in the new option:

      CustomPoint(Symbol())
      

      this is the function that I now added for this option... will I ever change it's name... I don't know.

      All these things above, they are currently not in Condition block becaue they look to me too specific, but people often ask for them so maybe I will include them.

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Simpler Way Than Using 8 Blocks?

      Go to "Options -> Project Options" and see at the top. Hope this helps. If there are some problems with this new functionality, make me know 🙂

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Simpler Way Than Using 8 Blocks?

      Ok, this needs special attention. I will go to update point format functionality, so many blocks for something so simple are not a good idea 🙂

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Simpler Way Than Using 8 Blocks?

      Symbol (market name) is text, for example EURUSD. Digits value is numeric, like 3, 4, 5... I don't see how you can adjust EURUSD with 5 for example.

      And I still don't understand why you are trying to get out of one problem by digging into things that are not connected to it. If you have too small trailing stop, then use bigger one.

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Simpler Way Than Using 8 Blocks?

      You can always use the native MQL4 function to get chart digits, and it is like this:

      MarketInfo("GBPUSD", MODE_DIGITS)
      

      or if you want to use the current symbol:

      MarketInfo(Symbol(), MODE_DIGITS)
      

      This code returns values like 3, 4, 5... the number of digits after the point.

      I don't know how this is related to the server overload problem. Yes, trailing stop can be set up in a way to modify stops whenever there is a small movement, or "Step" can be used to limit those movements... but for 1 pips I don't know what size can be this Stop parameter 🙂 So I can suggest to use virtual stops, check in "Options -> Project options" to enable "Use virtual stops". And virtual stops are objects - horizontal lines that the EA will check constantly, so there will be no interaction with the server. But in this case be really sure that the EA will not stop working (and leaving some trade uncovered) 🙂

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Compilation error

      This is in the local version I guess. Can you check if for the first "Select Variable (right-click)" you have empty-looking, but not empty field, probably some space symbol is over there?

      posted in Bug Reports
      fxDreema
      fxDreema
    • RE: Copy and Paste EA Code Building Blocks

      Well, 3 days ago nothing was updated, and this update was mostly javascript update with the idea to make fxDreema as lightweight as possible, but for that I decided to try some tricks and for some reason this does not work on some browsers. I just found that there are problems in Windows Safari, for example when I right-click the menu shows, but when I release the mouse it disappears. I don't have Mac but at least I can work on this Safari.

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Copy and Paste EA Code Building Blocks

      I didn't noticed that detaching all connections does not work... fixed that, at least for me.

      It's interesting that the other things works for me on Firefox, Chrome, Opera and... not very well on IE, but this is normal for IE. When I worked on projects today I had some weird connections behaviousr like this on the picture (unfortunately I was not able to understand what caused it) but after reload it was gone (and I could not to replicate it again).

      What browser is this one that you use?

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Copy and Paste EA Code Building Blocks

      Nothing about account types. I just updated the generator to be faster, but there are problems obviously 😕

      posted in Questions & Answers
      fxDreema
      fxDreema
    • RE: Question to community: duration of optimization attached EA

      Mine appears to be slower, but almost there - 3800 tests for 30 minutes. I don't know if I will leave it for another 30 minutes because I also use my laptop for other things 🙂

      posted in Questions & Answers
      fxDreema
      fxDreema
    • 1
    • 2
    • 309
    • 310
    • 311
    • 312
    • 313
    • 374
    • 375
    • 311 / 375