Libraries: SingleTesterCache - page 6

 
hini #:
With your library I can manually generate such a file after the trade is completed, right? and then do a visualisation of the trade results
If we are talking about this visualisation,

Forum on trading, automated trading systems and testing trading strategies.

Libraries: SingleTesterCache

fxsaber, 2023.11.18 13:10

I see the value of importing a tst-file only in convenient visualisation of statistics and transfer of trading history (you can transfer any history to another).

It is always possible to generate tst, but without milliseconds and magicnumber.


It is even possible to put real account stats into tst and import them into Tester for the same visualisation.

 
fxsaber #:
If we're talking about this visualisation,
.

you can always generate tst, but without milliseconds and magicnumber.


It is even possible to put the real account steutment into tst and import it into Tester for the same visualisation.

Got it, thanks!
 
this.volume = (UINT64)(::HistoryDealGetDouble(Ticket, DEAL_VOLUME) * this.contract_size * 1000 + 0.1);

Why is this formula used to calculate volume?

To maintain accuracy?

 
hini #:

Why is this formula used to calculate volume?

This is a question for the authors of tst-format - MQ.

 
To create a full virtual TST translation, do I still need to add a net asset array record? It seems that the virtual library does not keep a net asset array record.
 
hini #:
To create a full virtual TST translation, do I still need to add a net asset array record? There doesn't seem to be a net asset array record in the virtual library.

That's a bad translation. I assume that 's what you're asking about.

//+------------------------------------------------------------------+
//| Structure for the test schedule |
//+------------------------------------------------------------------+
struct TesterTradeState
{
  __int64           time;                // current test time
  double            balance;             // current balance
  double            equity;              // current equity
  double            value;               // current calculated value of deposit load

In Virtual, of course, none of this is calculated.

 
fxsaber #:
In Virtual, of course, none of this is calculated.

Yes, the net worth and balance arrays are not calculated in Virtual. I tried to modify the code to add the net worth array calculation, but the result is not the same as the official net worth array. So I want to ask: do you know how the official net worth array is calculated?

Yes, in the virtual environment, the net value and balance arrays are not calculated. I tried to modify the code by adding the calculation of the net value array, but the result differs from the official net value array. So I want to ask: do you know how the official net value array is calculated?

 
hini #:
do you know how the official net value array is calculated?

I have tested one-day trades: 22 orders, 28 net values. It seems that each time an order is opened and closed, one net value is added, but I don't understand how the remaining 6 are calculated. Is this the maximum or minimum net value at certain points in time?

I tested a day of trading with 22 orders and 28 net value figures. It seems like a net value figure is added each time an order is opened or closed, but I don't understand how the extra 6 are calculated. Is it the highest/lowest net value at certain times?

 
hini #:

Do you know how the official net worth array is calculated?

Not interested, as I have never used this data. But you can find the formula by experience.
 
hini #:

I don't understand how the remaining 6 are calculated. Is it the maximum or minimum net worth at certain points in time?

I would record the maximum value. The time to create another TesterTradeState record apparently depends on the frequency chosen by the developers and some other conditions.

If I had a task to create a very similar tst-file to the original one, I would not achieve identical TesterTradeState[].