Skip to main content

API Status and Compatibility

This page defines the support boundary for the public Developer Center. The established HyperionX.Custom contract in the source-recorded signed 1.1.12 baseline is the release-safe path, including the opt-in V2 facade documented for that release. Features found only in newer 1.1.14 development source are labeled Unreleased; Preview surfaces must be verified in the exact installed package.

LabelMeaning
CurrentImplemented, runtime-discovered, and documented for customer use in the packaged release.
PreviewImplemented, but packaging, behavior, or the public contract can still change.
InternalUsed by HyperionX itself and not a supported extension dependency.
UnreleasedPresent in the current development working tree but not established as part of the signed 1.1.12 public contract.
RoadmapPlanned or proposed; do not code against it.

Current Code Lab surface

  • HyperionX.Custom.Indicators.Indicator with OnStateChanged() and OnBarUpdate().
  • HyperionX.Custom.Strategies.Strategy with managed orders, direct submission, and order/execution callbacks.
  • Common ScriptBase series, plots, drawings, multi-series support, and the documented Ctx facade.
  • HyperionX.Custom.Addons.AddonBase with the narrow load/unload contract.
  • Generated indicator convenience helpers for direct Indicator subclasses in HyperionX.Custom.Indicators.
  • Optional indicator IIndicatorAnalysisProvider and IResearchFeatureProvider capabilities.

The runtime activation build—not a Code Lab-only green build—is the final compatibility gate.

Preview surface

  • Custom bar types and bar-builder metadata.
  • Optimizers and optimization fitness modules.
  • Money-management and commission modules.
  • Ctx.Alerts, which currently targets HyperionX Discord signals rather than a provider-neutral alert contract.
  • Historical position adoption through HistoricalPositionSyncMode in the reviewed 1.1.12-versioned source snapshot. Verify the exact installed build before depending on it.

Code Lab templates and runtime discovery exist for these categories, but a source checkout and an installed package can differ in seeded convenience bases or default modules. Test the actual packaged application used by recipients.

Preview: HyperionX.SDK runtime adapter

The active development working tree now contains an in-memory host generator and runtime adapters for direct, concrete subclasses of:

  • HyperionX.SDK.IndicatorBase.
  • HyperionX.SDK.StrategyBase.

The adapter maps OnInitialize, OnBar(int), OnTick(Tick), and OnDispose into native hosts, proxies [Parameter] properties into the standard property UI, and supplies SDK context adapters for series, selected indicators, plotting, orders, position, risk, and logging.

Not the release-safe authoring model

The 1.1.12-versioned source snapshot contains these adapter files, and the project changelog records SDK/runtime bridge work in signed release 1.1.11. That does not promote direct SDK subclasses into a stable public contract, and this documentation audit did not independently test the distributed MSI. An SDK-shaped script can behave differently or fail to appear in an installed build. Public examples and distributable extensions should continue to use HyperionX.Custom, including the documented V2 facade when needed.

The generator recognizes a non-abstract, non-generic class that directly declares SDK IndicatorBase or StrategyBase through the SDK namespace or import. It emits a hidden native host with the suffix HyperionXHost. Treat the generated host name and implementation as internal.

Internal platform objects

A public property can expose an object that contains internal platform members. Reachability through reflection or IntelliSense does not make every member a supported contract.

Examples include:

  • Undocumented members reachable through AddonContext.Session.
  • Concrete chart controls, windows, and view models behind the chart facades.
  • Provider clients and broker-specific implementation classes.
  • Build controllers, source generators, and assembly-loader internals.
  • Generated SDK host classes and generated indicator-cache implementation details.

Use Ctx, AddonContext.Dispatcher, the documented Code Lab contracts, or the local desktop API instead.

Compatibility rules

  • Record the exact packaged HyperionX version used for verification.
  • Rebuild and rerun the extension verification matrix after a platform update.
  • Treat Preview APIs as potentially source-breaking.
  • Do not depend on an Unreleased feature in a release sample or an unverified Preview feature in a distributable extension.
  • Avoid hard-coded installation paths and assembly versions.
  • Do not ship copied HyperionX binaries in a source bundle.
  • Compile distributed samples in a clean installed environment, then complete desktop runtime activation.
  • Document required provider capabilities, especially depth, tick, account, and live-order access.
  • Check release notes for lifecycle, orders, rendering, research, and packaging changes.

Documentation rule

If a member is not in this Developer Center or its linked references, verify it in the exact target build before use. Do not infer an API from NinjaTrader, another platform, generated source, or a similarly named internal class.

For the consolidated boundary, see Platform API Contract. A proposal or roadmap item is not evidence that a feature is available.