Errors, bugs, questions - page 2155

 
Vladimir Pastushak:

Can someone name at least 2 advantages of custom history ?

Forum on trading, automated trading systems and trading strategy testing

ALTERNATIVE MQL5 TESTING PROGRAMS ?

fxsaber, 2016.12.16 15:50

  • You can change prices yourself and watch the dependence of TC indicators on this process - build appropriate charts.
  • Similarly - with the commission. At the same time to change the commission itself and / or add a part of it to the price. Again the same TC charts.
  • The same with the slippage.
  • Using these charts we can determine that the TS does not suck if it can work at improved prices. Then there is a question of finding a suitable broker with the necessary trading conditions. I.e. the TS on your current brokers is losing money. But you know what you need for profitability and look (not necessarily MT5) for the right place to trade. Many have had very decent TSs in their hands, but thrown them away because they were plummering at their current broker. And you just had to change broker for the right conditions. Or you could have haggled the manager for a lower commission with the appropriate technical justification.
  • You can filter the price history, knocking out spike ticks. On which there is a high probability of non-execution of a limit order - a redirect. Thus, the tester will not execute on spikes, making the execution closer to the real. The tester's Delay-mode is for market orders, not for limit orders.
  • You can filter the price history, knowing which prices do not affect the TS itself. Normally, 99% of ticks have no effect on most of the TS. This allows accelerating the testing of the TS by orders of magnitude. It's faster than the Cloud - on a local machine + free.
  • You can take a third-party tick history - not the MT5. And we will understand at once to what extent the source is suitable to your TS.
  • You can synchronize the price history from different symbols, so that false arbitrage situations don't occur.
  • You can run statistical Expert Advisors in the tester on different price histories and compare trading conditions.
  • You can compare lags between different feeds.
  • You can remove obvious errors in the price history and fill gaps.
  • You can generate your own price history with necessary statistical data - Monte Carlo TS.
  • You can generate synthetic symbol price history and run TC on it.
  • ...
 


Additional example to application #1913961

typedef void (*fn)();
struct A {     fn f; };
struct B : A {
        B() { B::f( 1 ); } //Error: '1' - wrong parameters count
        void f( int ) {}
};

B::f is explicitly specified here at all, and still there is an error when compiling

 
A100:

Additional example to application #1913961

B::f is explicitly specified here at all, and still there is an error when compiling

How to treat f - as a method or as a field-function?

 
fxsaber:

Is f a method or a field function?

The field-function does not fit the signature, but the method does
 
A100:
The field-function does not fit the signature, but the method does

The bug is clear from the start. You haven't answered the question.

 

Tester bug.

Let there be a BUY position with TP first. And on the same TP there is a SellLimit. The tester performs such situations in different ways

  • first BUY_TP, then SellLimit.
  • first SellLimit, then Sell_TP.

In the second case we have two opposite positions opened at once in a hedge or a BUY position closed without opening SELL.

For hedges it is aggravated by the fact that SellLimit may be redeemed due to insufficient money to open the second position.

In general, please lead the Tester to an unambiguous behaviour - TP first, then Limit.

 
fxsaber:

No one seems to be testing on custom tick history. Once you don't test for a few hours, the story disappears. Creepy bug. How people still record something from crypto-exchanges to test, I don't understand.

Sometimes, something else happens with the tester and it starts giving zero profit when I close each position. The only way to cure it was to re-create custom symbol.

 
fxsaber:

The bug is clear from the start. You have not answered the question.

Perceived according to the context, in this case as a method
 
A100:
To be taken in context, in this case as a method

Does such an entry seem normal?

this.f = this.f; // Присвоить полю-функции указатель на метод.
 
fxsaber:

Does such an entry seem normal?

Depends where - you need a complete example to answer the question