Wealth-Lab Wiki

API ChartStyles Community Components Community Indicators IndexDefinitions Knowledge Base Misc Optimizers Pending Deletion PosSizers Providers Standard Indicators TASC Traders Tips TASCIndicators Tutorial Videos Visualizers
RSS

Navigation


Quick Search
»
Advanced Search »


Random data provider

RSS

What it is

This provider can quickly create large DataSets with randomized historical data for blind testing purposes.

Hopefully, it will help you fight over-optimization and design better trading systems without curve-fitting.

Creating a random DataSet

Creating a new DataSet containing random data is straightforward:

Image

First, you need to specify a prefix which will be used to create required number of random symbols in conjunction with the counter. On the right, there's a preview area. For example, if you enter "TEST" as the prefix and request the provider to create 1000 symbols, it will show that the symbols "TEST0" to "TEST999" are going to be created.

1-minite and Daily data are supported: you can select a data scale from the drop down list. For 1-minute scale, custom market hours can be specified. Finally, the Starting Date field controls how deep your "historical" data will be.

Starting from version 2011.02, the provider allows to specify which randomization method to use when creating new DataSets. Read on below for their descriptions. This is a breaking change: all DataSets created before will be lost and have to be created from scratch (but all previously generated data is preserved).

Under the hood

Under the hood, the provider implements two different engines of synthetic data creation:

  • Modified simple random data generator described here.
  • RandomWalk generator based on power-law distribution. The original ChartScript could be configured for a market bias (i.e. bull, bear or neutral market) whereas the Random provider makes this choice, well, randomly.

If "Randomly select" was specified when creating a DataSet, it's impossible to know beforehand which method will be used - method will be picked randomly for each symbol. However, refreshing a symbol's data doesn't keep the random engine preference.

Like in real life, synthetic prices can not go below zero: when the price gets "close enough", the Random provider will make its best to not allow the market to lose its value, usually by forming a basing period or doing a "V" reversal.

Further reading


Known issues and limitations

  • Symbols with extra large data (e.g. half a million bars) may have very long loading times
    • Workaround: selecting "All data" will load such files instantly, other data loading ranges aren't recommended.
  • By design, specifying randomization method does not apply to: Streaming charts, Strategy Monitor, intraday data (uses its own sort of simple randomization).

Important Disclaimer: The information provided by Wealth-Lab is strictly for informational purposes and is not to be construed as advice or solicitation to buy or sell any security.  The owner of Wealth-Lab.com assumes no liability resulting from the use of the material contained herein for investment purposes. By using this web site, you agree to the terms of this disclaimer and our Terms of Use.

Used under license from FMR Corp. Copyright 2008 FMR Corp. All rights reserved.


ScrewTurn Wiki. Some of the icons created by FamFamFam.