You are on page 1of 9

StrategyQuant

AlgoWizard
QuantAnalyzer
QuantDataManager

Company
Learn & Support
Blog

Account

Forum
Login

Products

StrategyQuant

AlgoWizard

QuantDataManager

QuantAnalyzer

Company

About
Contact us
Partner with us
Team
Blog
Support
Spojte se s námi i na

sociálních sítích

Blog
Documentation
Codebase

More

Shared
Forum
Contact us

Navigate

StrategyQuant

Introduction
Introduction – What is StrategyQuant
What’s new in StrategyQuant X?
How does StrategyQuant work?
System requirements
Installation
Backtesting engines – MetaTrader 4,MetaTrader 5, Tradestation
Multiple exits generation (scale out, ATM)
Update of folder structure from Build 131

Installation
Setting up firewall for StrategyQuant X on Linux
How to solve an issue when StrategyQuant X is not able to launch – awt.ddl can’t find dependent librearies

Quick start
Program layout
Builder layout
Databanks and files
Different build modes
Strategy style
Cross checks – automated strategy robustness tests
Recommended workflows for building strategies
Fit strategy to existing portfolio
Custom analysis

Program screens
Indicators calibration (new in B131)
Builder
Databanks
Progress – project logs, performance stats and charts
Full settings
Settings – What to build
Settings – Parts to improve
Settings – Genetic options
Settings – Data
Settings – Trading options
Settings – Building blocks
Settings – ATM
Settings – Money management
Settings – Cross checks
Settings – Ranking
Settings – Notes
Results – Overview
Results – Strategy analysis metrics
Results – List of trades
Results – Equity chart
Results – Trade analysis
Results – Strategy correlation
Results – Trades on chart
Results – Strategy config
Results – Source code

Cross checks - robustness tests


Use Cross checks build in Builder and Retester
Retest with higher precision
Monte Carlo trades manipulation
Retest on additional markets
Monte Carlo retest methods
What If simulations
Optimization Profile and System Parameter Permutation in StrategyQuant

Optimization
Walk-Forward Optimization
Walk-Forward Matrix
Description of advanced Walk-Forward values that can be used in filters / databank
Simple Optimization
Recommended optimization parameters
Sequential optimization

Strategy templates, custom blocks and indicators


Strategy templates
Custom blocks
Random groups
External indicators
Configuring parameter ranges for standard and custom blocks

Custom projects and tasks


Introduction to custom projects
Main concepts
Build strategies task
Retest strategies task
Automatic retest task
Automatic retest – Data setting
Optimize strategies task
Stop & Start task
Filter strategies task
Go To Task
Notification task
Create portfolio task
Clear databanks task
Load from files task
Save to files task
Call external script task
Delete a file
Wait for user/file
Update data task
Log databank contents

Reliable backtesting & trading


Reliable backtesting in MetaTrader
Reliable backtesting in Tradestation / MultiCharts
The strategy tried to place stop/limit order at incorrect price
Not supported for engine
Reliable backtesting in JForex
Comparing and using the same backtest settings
Best practices for multi-TF strategies backtesting and trading

How to...
Export strategy from StrategyQuant and test or trade it in MetaTrader
How to install Strategy Quant indicators to Metatrader 4/5
How to run the Metatrader in portable mode and what it is good for?
How to load and save build config
Manually configure internal web server port
Merge / Split Portfolio
Switching logs to debug mode
Fixing blurry user interface
How to enable or disable GPU acceleration in StrategyQuant X
Starting StrategyQuantX with more memory
How to downgrade
Use OppositeBlocks configuration to control the negation
Multiple orders to the same direction
Troubleshooting

SQ 4 Business (MQL Market)


What is MQL Market and what it offers?
Creating MQL4 / MQL 5 product on MQL Market step by step

AlgoWizard

QuantAnalyzer

QuantDataManager

Other
CLI - Command line

Programming for SQ

Tutorials

Documentation / StrategyQuant

Last updated on April 16, 2020 by Mark Fric

Strategy templates
Page contents

Strategy templates and placeholders


How exactly are the conditions for RandomCondition placeholder generated?

One of the main advantages of StrategQuant X is ability to generate strategies with your own custom “format”.

StrategyQuant generates strategies using strategy templates – they are strategies that use special placeholder blocks in certain parts (we call
these Random placeholders) and StrategyQuant then randomly generates blocks that fill these placeholders.

Strategy templates and placeholders


Look at the screenshot below, it shows a Signal rule of a standard SQ X strategy template:

You can see that signals for log & short entry & exit are not defined in the strategy yet – this is because they will be generated randomly by
StrategyQuant.
Instead, there are random placeholders:

RandomCondition(RandomConditionLong) – this means that SQ will generate random condition(s) in this place. Each random condition
has a unique identification, for example RandomConditionLong.
NegatedCondition(RandomConditionLong) – is a special placeholder that tells SQ X to negate whatever condition it generated for the
random condition named RandomConditionLong and put it here.
So as a result there will be a randomly generated condition for the Long entry signal, and matching negated condition for Short entry
signal – and the same for exit signals.

For example, after the generation it will look like this:

SIGNAL – LongEntrySignal:

1. CCI(14)[1] > 0 and RSI(20)[1] > 50

SIGNAL – ShortEntrySignal:

1. CCI(14)[1] < 0 and RSI(20)[1] < 50

Note that conditions for Short entry have opposite comparison operators – < (Is Lower) instead of > (Is Greater), which means they are
negations of the Long conditions.

How exactly are the conditions for RandomCondition


placeholder generated?
By default they are generated from the selection of building blocks you have in your Full settings -> Building blocks:
StrategyQuant X will use your selection of building blocks and other configuration settings (how many conditions it should generate, the Period
and Shift ranges, etc.) to generate the conditions it will put in place of RandomCondition.

To learn more about strategy template check the following articles on our blog:

Introduction to the StrategyQuant templating system – Part I


Introduction to the StrategyQuant templating system – Part II

Was this article helpful?


Please login to comment

2 COMMENTS   Oldest

tmantrader (@tmantrader)

January 23, 2022 7:26 pm

Question: if the condition is CCI(14)[1] > 0 AND RSI(20)[1] > 50 , why isn’t the negation of
the condition CCI(14)[1] <= 0 OR RSI(20)[1] <= 50 ?

tomas262 (@tomas262) Admin

 Reply to tmantrader 
January 25, 2022 5:03 pm

Hi, that is correct short negation in case of RSI / CCI. Let us know if any questions

Products
StrategyQuant
AlgoWizard
QuantAnalyzer
QuantDataManager

Resources
Blog
Documentation
Forum
Support
Report bug / suggest idea

Company
About us
Contact us
Team
Partner Program

Follow us
Facebook
YouTube
Twitter

Privacy policy
Terms of use

Risk Disclosure:
Futures and forex trading contains substantial risk and is not for every investor. An investor could potentially lose all or more than the initial
investment. Risk capital is money that can be lost without jeopardizing ones’ financial security or life style. Only risk capital should be used for trading
and only those with sufficient risk capital should consider trading. Past performance is not necessarily indicative of future results.

Hypothetical Performance Disclosure:


Hypothetical performance results have many inherent limitations, some of which are described below. no representation is being made that any
account will or is likely to achieve profits or losses similar to those shown; in fact, there are frequently sharp differences between hypothetical
performance results and the actual results subsequently achieved by any particular trading program. One of the limitations of hypothetical
performance results is that they are generally prepared with the benefit of hindsight. In addition, hypothetical trading does not involve financial risk,
and no hypothetical trading record can completely account for the impact of financial risk of actual trading. for example, the ability to withstand losses
or to adhere to a particular trading program in spite of trading losses are material points which can also adversely affect actual trading results. There
are numerous other factors related to the markets in general or to the implementation of any specific trading program which cannot be fully accounted
for in the preparation of hypothetical performance results and all which can adversely affect trading results.

Testimonial Disclosure:
Testimonials appearing on www.strategyquant.com may not be representative of the experience of other clients or customers and is not a guarantee
of future performance or success.

You might also like