General

[general] groups the parameters that control the engine’s global execution, including the number of threads, the results directory, and the in-memory indicator cache.

This block is optional because all its keys have a default value. A strategy can only declare one [general] block.

Example

[general]
threads            = 0                  # Uses all logical cores minus one
results_directory  = "C:\\Users\\alice\\WhaleE\\results"   # ABSOLUTE path required (Windows)
cache_enabled      = true              # Enables or disables the in-memory indicator cache.
cache_budget_mode  = "percent"         # Sets the indicator cache budget mode: "off", "percent", or "mb".
cache_budget_value = 80                # Budget value associated with the selected mode. In "percent" mode, the value is between 1 and 100. In "mb" mode, it must be greater than 0.

Block parameters

ParameterDescription
threads
 Integer
 Optional
Number of threads to use for calculations. If the value is 0 or not provided, the number of threads will be the number of logical processors minus 1, with a minimum of 1.
Default value: 0
results_directory
 Text
 Optional
Absolute base path used by Whale-E for its default output locations. When this key is provided, the path must be absolute. When it is omitted, Whale-E automatically computes an absolute path to a results directory next to the strategy TOML file. Log files and the SQLite results database are stored by default in a subdirectory named after the strategy, for example <results_directory>/<strategy name>. This directory is created only when Whale-E actually writes output to disk.
Default value: derived absolute path
cache_enabled
 Boolean
 Optional
Enables or disables the in-memory indicator series cache. This cache reuses identical computations and can improve performance without impacting results.
Default value: true
cache_budget_mode
 Text
 Optional
Sets the budget mode for the indicator cache. Supported values (case-insensitive): off, percent, mb. When the budget is reached, the cache stops inserting new entries but remains readable.
Default value: "percent"
cache_budget_value
 Integer
 Optional
Budget value associated with the selected mode.
percent: percentage of total RAM, between 1 and 100.
mb: fixed budget in MB, greater than 0.
Ignored when cache_budget_mode = "off".
Default value: 80

Note: these cache options only affect the in-memory indicator cache. Market data caching (SQLite) is configured in the [database] block.