Skip to content

Changelog for cTrader Algo API

5.6

November, 2025

What's new
  • New ChartTemplates API allows you to retrieve, create, update, remove and apply chart templates.
  • New Symbol[] parameter type allows you to pass multiple symbols to an algo, with a multi-symbol picker UI representation.
  • New Enum[] parameter type allows you to pass multiple values of an enum type to an algo, with a multi-enum value picker UI representation.
  • New TimeFrame[] parameter type allows you to pass multiple TimeFrame values to an algo, with a multi-period picker UI representation.
  • New MultiSelect algo control allows you to let users of your algo select multiple unique string values.
  • New OpenDevToolsWindow method for WebView control allows you to open dev tools for a WebView control instance.
  • New SwapCalculationType for symbol points.
Improvements
  • TimeFrame parameter types upgraded to support custom periods in plugins.
  • DateTime parameter type changed to use new hard coded default value of 31/10/2025 00:00:00 if not set by algo instead of DateTime.MinValue.
  • DateOnly parameter type changed to use new hard coded default value of 31/10/2025 if not set by algo instead of DateOnly.MinValue.
  • TimeSpan parameter type changed to use new default value of 00:00:00 if not set by algo instead of TimeSpan.MinValue.
  • TimeSpan parameter type changed to use new min value of 00:00:00 and max value of 23:59:59 if not set by algo instead of TimeSpan.MinValue and TimeSpan.MaxValue.
  • Some built-in algo samples added to the list of C# and Python algorithm templates and algo samples GitHub repositories.
  • Source code of all built-in indicators added to the C# and Python algo samples GitHub repositories.
  • Chart view-port data transfer to algos refactored from from eager to lazy. This change prevents unnecessary resource usage in cases where an algo does not use chart view-port API members.
Bug fixes
  • Chart controls with coordinates resulting in problems when used alongside chart objects.
  • Account related data, such as positions, pending orders and others, not being updated when trading account is switched for plugins.
  • DateTimePicker control ValueChanged event not being triggered when value is set by algo.

5.5

September, 2025

What's new
  • New Symbol parameter type allows you to select a symbol from your account symbols list and pass it to an algo.
  • New TimeSpan parameter type allows you to pass a typed time interval or time of day to an algo, with a time picker UI representation.
  • New DateTime parameter type allows you to pass a typed date and time in your algo's time zone, with a date-time picker UI representation.
  • New DateOnly parameter type allows you to pass a typed date to an algo, with a date picker UI representation.
  • New Parameters collection property, added to PluginType (similar to IndicatorType and RobotType), allows you to access plugin parameters in code.
  • New DateTimePicker algo control allows you to easily get a date and time value from a user of your algo.
Improvements
  • Changed loading for account deposit asset from eager to lazy mode to prevent deposit asset not found errors during algo start-up.
Bug fixes
  • New loaded bars after calling LoadMoreHistory in plugins were not added to chart.
  • Chart bars were not being updated after switching chart symbol or time frame in plugins.
  • Incorrect number of positions returned inside the position opened event handler when accessing Positions.Count

5.4

July, 2025

What's new
  • Plugin hotkeys API: New API objects for plugins allow you to add global hotkeys. These hotkeys behave like built-in cTrader hotkeys and work everywhere.
  • Parameter and output descriptions: New Description property in parameter and output attributes shows tooltips in the UI when users hover over them.
  • Chart bars toggle: New Bars flag in chart display settings allows you to hide chart bars. The flag removes the need for transparent colours and prevents scaling issues by not drawing bars.
  • Setting active frames: New Activate method in the Frame class allows plugins to set the active chart or frame.
  • Bar outputs: Indicators can now output OHLC bars with volume instead of a single data series. The output allows displaying custom bar charts on panels or the main chart and can be reused by other indicators.
  • Data series for plugins: New CreateDataSeries method allows plugins to create data series. The created series can be passed as inputs to internal indicators.
  • Panel child properties: New Children, HasChild and ChildrenCount properties let you access and work with panel contents.
  • Grid panel position info: New GridChildPositionInfo method returns a child’s position in the grid.
  • Main menu API for plugins: New API lets you add menu items with SVG icons to the main menu. Top menu items can show custom controls. Bottom menu items can trigger plugin handlers.
  • Plugin parameters: Plugins can now use parameters the same way indicators and cBots do. The parameters are visible and editable in plugin settings.
Improvements
  • Assets API is refactored to reduce resource usage.
  • Sleep API is improved to prevent freezing for cBots and indicators when the market is closed.
Bug fixes
  • No API bugs were found or fixed in version 5.4.

5.3

June, 2025

What's new
  • Custom timeframe API: New API lets plugins define custom timeframes and supply data for them.
  • Custom symbol API: New API lets plugins create custom symbols. The created symbols can be based on existing ones or defined from scratch and behave like broker symbols.
  • Custom backtesting data source: New API allows plugins to provide backtesting and optimisation data. The API supports external tick data and third-party feeds.
  • Notification popups: Algos can now show popup alerts similar to built-in cTrader notifications.
  • Symbol sentiment access: Algos can now read sentiment data for symbols.
Improvements
  • Cross-timeframe backtesting: Improved error messages for incompatible timeframe use in backtesting and optimisation.
  • Updated Help Centre link in default algo templates.
  • Made Account.UserId and Account.Nickname available for Cloud cBot instances.
  • CID disconnection handling: Algos keep running and return the last known account data when CID disconnects.
  • Message timeouts: Timeout handling prevents algos from getting stuck while waiting for a response from cTrader.
  • Help Centre API updates: Added protected API methods to the Help Centre reference.
Bug fixes
  • Account.BrokerName returned empty in the console.
  • Algos froze when loading all account transactions.
  • RiskReward tool in backtest incorrectly placed live trades.
  • Typo in ChartObject.IsLocked property documentation.
  • ComboBox.SelectionChanged was triggered after setting the selected item before render.

Image title