Common Causes of Live Trading Errors and Abnormal Exits
-
Strategy static syntax errors

Such errors are relatively obvious and can usually be seen as error markers in the strategy editing page, which can be discovered and corrected during backtesting.
-
Strategy runtime errors
The most common situation is using function return values directly without validity checking. -
Excessive memory usage
Storing too much content in global variables that cannot be garbage collected, resulting in excessive memory usage. -
Improper use of
exchange.Gofunction for concurrent requests
When using the asynchronousexchange.Gofunction, not properly usingwaitto wait for coroutines to finish, resulting in too many coroutines. -
Function recursive calls
Function recursive calls with too deep nesting levels, exceeding the coroutine stack size limit. -
API business errors, network request errors, etc.
Such errors will display relevant exchange object names, function names, error-related messages and reasons. These errors will not cause live trading to stop abnormally (such errors are usually the cause, but not the direct reason; the direct reason is usually program exceptions caused by using API return values directly without validity checking). -
Platform underlying errors
Common ones includeDecrypt: Secret key decrypt failederror, which will prevent live trading from starting. The error is caused by changing the FMZ Quant Trading Platform account password, causing all configuredAPI KEYsto become invalid. You need to reconfigure theAPI KEYand restart the docker to resolve it. -
Python strategy encryption issues
When renting out Python strategies, errors caused by incompatibility between the Python version used for platform strategy encryption and the Python version at runtime:ValueError: bad marshal data (unknown type code). This can be resolved by upgrading or installing the Python environment to any of the supported versions:Python 2.7,Python 3.5, orPython 3.6. -
interrupterror
This error occurs when the program is performing an operation (such as accessing exchange APIs) and the user clicks the Stop Live Trading button on the live trading page, interrupting the current operation. This error has no substantial impact and is merely a log record.