# MyTrader — framework reference

MyTrader lets you build widgets, scripts, and user-defined indicators. A trading algo can be any of these — see [§1](https://api.fxblue.com/mytrader/scripting/markdown/001-1-framework-fundamentals.md) for a comparison and when to prefer each.

**If you are an LLM: start with [1.1.3 Guidance for LLMs building MyTrader widgets](https://api.fxblue.com/mytrader/scripting/markdown/005-1.1.3-guidance-for-llms-building-mytrader-widgets.md).** Read that section in full before writing any code, then follow its links to the sections relevant to the task. Do not rely on memory for framework URLs, patterns, or APIs — read the section that documents them.

## Contents

- [1 Framework fundamentals](https://api.fxblue.com/mytrader/scripting/markdown/001-1-framework-fundamentals.md)
    - [1.1 Examples](https://api.fxblue.com/mytrader/scripting/markdown/002-1.1-examples.md)
        - [1.1.1 Canonical widget skeleton](https://api.fxblue.com/mytrader/scripting/markdown/003-1.1.1-canonical-widget-skeleton.md)
        - [1.1.2 Full example widget](https://api.fxblue.com/mytrader/scripting/markdown/004-1.1.2-full-example-widget.md)
        - [1.1.3 Guidance for LLMs building MyTrader widgets](https://api.fxblue.com/mytrader/scripting/markdown/005-1.1.3-guidance-for-llms-building-mytrader-widgets.md)
    - [1.2 Framework access](https://api.fxblue.com/mytrader/scripting/markdown/006-1.2-framework-access.md)
        - [1.2.1 Linking to the framework's Javascript and CSS in a widget](https://api.fxblue.com/mytrader/scripting/markdown/007-1.2.1-linking-to-the-framework-s-javascript-and-css-in-a-widget.md)
        - [1.2.2 Creating an instance of the framework in a widget](https://api.fxblue.com/mytrader/scripting/markdown/008-1.2.2-creating-an-instance-of-the-framework-in-a-widget.md)
            - [1.2.2.1 Alternative, class-based framework access in widgets](https://api.fxblue.com/mytrader/scripting/markdown/009-1.2.2.1-alternative-class-based-framework-access-in-widgets.md)
        - [1.2.3 Waiting for the framework to become available in a widget](https://api.fxblue.com/mytrader/scripting/markdown/010-1.2.3-waiting-for-the-framework-to-become-available-in-a-widget.md)
        - [1.2.4 Reloading or navigation in widgets](https://api.fxblue.com/mytrader/scripting/markdown/011-1.2.4-reloading-or-navigation-in-widgets.md)
    - [1.3 Browser environment](https://api.fxblue.com/mytrader/scripting/markdown/012-1.3-browser-environment.md)
        - [1.3.1 Scripts and UDIXes - web workers](https://api.fxblue.com/mytrader/scripting/markdown/013-1.3.1-scripts-and-udixes-web-workers.md)
        - [1.3.2 Browser modals](https://api.fxblue.com/mytrader/scripting/markdown/014-1.3.2-browser-modals.md)
        - [1.3.3 Widget sandboxing](https://api.fxblue.com/mytrader/scripting/markdown/015-1.3.3-widget-sandboxing.md)
    - [1.4 Asynchronous operation](https://api.fxblue.com/mytrader/scripting/markdown/016-1.4-asynchronous-operation.md)
    - [1.5 Javascript Promises](https://api.fxblue.com/mytrader/scripting/markdown/017-1.5-javascript-promises.md)
        - [1.5.1 Async functions and await syntax](https://api.fxblue.com/mytrader/scripting/markdown/018-1.5.1-async-functions-and-await-syntax.md)
    - [1.6 Component lifecycle](https://api.fxblue.com/mytrader/scripting/markdown/019-1.6-component-lifecycle.md)
        - [1.6.1 Script lifecycle](https://api.fxblue.com/mytrader/scripting/markdown/020-1.6.1-script-lifecycle.md)
        - [1.6.2 UDIX lifecycle](https://api.fxblue.com/mytrader/scripting/markdown/021-1.6.2-udix-lifecycle.md)
        - [1.6.3 Widget lifecycle](https://api.fxblue.com/mytrader/scripting/markdown/022-1.6.3-widget-lifecycle.md)
            - [1.6.3.1 Permanent widgets](https://api.fxblue.com/mytrader/scripting/markdown/023-1.6.3.1-permanent-widgets.md)
    - [1.7 External data and hosting](https://api.fxblue.com/mytrader/scripting/markdown/024-1.7-external-data-and-hosting.md)
        - [1.7.1 Requesting external data (news etc)](https://api.fxblue.com/mytrader/scripting/markdown/025-1.7.1-requesting-external-data-news-etc.md)
        - [1.7.2 Hosting external content for the MyTrader platform](https://api.fxblue.com/mytrader/scripting/markdown/026-1.7.2-hosting-external-content-for-the-mytrader-platform.md)
    - [1.8 Trading account capabilities](https://api.fxblue.com/mytrader/scripting/markdown/027-1.8-trading-account-capabilities.md)
    - [1.9 Data representations and standards](https://api.fxblue.com/mytrader/scripting/markdown/028-1.9-data-representations-and-standards.md)
        - [1.9.1 Dictionaries](https://api.fxblue.com/mytrader/scripting/markdown/029-1.9.1-dictionaries.md)
        - [1.9.2 Times](https://api.fxblue.com/mytrader/scripting/markdown/030-1.9.2-times.md)
        - [1.9.3 Time zones](https://api.fxblue.com/mytrader/scripting/markdown/031-1.9.3-time-zones.md)
        - [1.9.4 Trade volumes](https://api.fxblue.com/mytrader/scripting/markdown/032-1.9.4-trade-volumes.md)
        - [1.9.5 Candle data](https://api.fxblue.com/mytrader/scripting/markdown/033-1.9.5-candle-data.md)
        - [1.9.6 Chart timeframes](https://api.fxblue.com/mytrader/scripting/markdown/034-1.9.6-chart-timeframes.md)
    - [1.10 Runtime environment assumptions](https://api.fxblue.com/mytrader/scripting/markdown/035-1.10-runtime-environment-assumptions.md)
    - [1.11 Common pitfalls](https://api.fxblue.com/mytrader/scripting/markdown/036-1.11-common-pitfalls.md)
    - [1.12 Future additions to the framework](https://api.fxblue.com/mytrader/scripting/markdown/037-1.12-future-additions-to-the-framework.md)
        - [1.12.1 Undocumented members of the framework](https://api.fxblue.com/mytrader/scripting/markdown/038-1.12.1-undocumented-members-of-the-framework.md)
- [2 Collections, objects, and properties in the framework](https://api.fxblue.com/mytrader/scripting/markdown/039-2-collections-objects-and-properties-in-the-framework.md)
    - [2.1 Framework collections](https://api.fxblue.com/mytrader/scripting/markdown/040-2.1-framework-collections.md)
    - [2.2 Framework objects](https://api.fxblue.com/mytrader/scripting/markdown/041-2.2-framework-objects.md)
    - [2.3 Framework properties](https://api.fxblue.com/mytrader/scripting/markdown/042-2.3-framework-properties.md)
    - [2.4 Framework.Instruments collection](https://api.fxblue.com/mytrader/scripting/markdown/043-2.4-framework-instruments-collection.md)
        - [2.4.1 Instruments.get(), Instruments.getOrBlank(), and standardisation](https://api.fxblue.com/mytrader/scripting/markdown/044-2.4.1-instruments-get-instruments-getorblank-and-standardisation.md)
        - [2.4.2 Instruments.GetTradeableInstruments()](https://api.fxblue.com/mytrader/scripting/markdown/045-2.4.2-instruments-gettradeableinstruments.md)
        - [2.4.3 Instruments.GetInstrumentCategories()](https://api.fxblue.com/mytrader/scripting/markdown/046-2.4.3-instruments-getinstrumentcategories.md)
    - [2.5 FXB.Instrument object](https://api.fxblue.com/mytrader/scripting/markdown/047-2.5-fxb-instrument-object.md)
        - [2.5.1 FXB.Instrument properties](https://api.fxblue.com/mytrader/scripting/markdown/048-2.5.1-fxb-instrument-properties.md)
        - [2.5.2 Market categories (categoryId of FXB.Instrument)](https://api.fxblue.com/mytrader/scripting/markdown/049-2.5.2-market-categories-categoryid-of-fxb-instrument.md)
        - [2.5.3 Market data on spread-betting accounts](https://api.fxblue.com/mytrader/scripting/markdown/050-2.5.3-market-data-on-spread-betting-accounts.md)
        - [2.5.4 FXB.Instrument helper functions](https://api.fxblue.com/mytrader/scripting/markdown/051-2.5.4-fxb-instrument-helper-functions.md)
    - [2.6 Framework.Orders collection](https://api.fxblue.com/mytrader/scripting/markdown/052-2.6-framework-orders-collection.md)
    - [2.7 FXB.Order object](https://api.fxblue.com/mytrader/scripting/markdown/053-2.7-fxb-order-object.md)
        - [2.7.1 Order types](https://api.fxblue.com/mytrader/scripting/markdown/054-2.7.1-order-types.md)
        - [2.7.2 Order-type helper functions](https://api.fxblue.com/mytrader/scripting/markdown/055-2.7.2-order-type-helper-functions.md)
    - [2.8 Framework.Positions collection](https://api.fxblue.com/mytrader/scripting/markdown/056-2.8-framework-positions-collection.md)
    - [2.9 FXB.Position object](https://api.fxblue.com/mytrader/scripting/markdown/057-2.9-fxb-position-object.md)
    - [2.10 Framework.TradeHistory collection](https://api.fxblue.com/mytrader/scripting/markdown/058-2.10-framework-tradehistory-collection.md)
    - [2.11 Framework.Account object](https://api.fxblue.com/mytrader/scripting/markdown/059-2.11-framework-account-object.md)
        - [2.11.1 Framework.Account properties](https://api.fxblue.com/mytrader/scripting/markdown/060-2.11.1-framework-account-properties.md)
        - [2.11.2 Account features](https://api.fxblue.com/mytrader/scripting/markdown/061-2.11.2-account-features.md)
    - [2.12 Framework.Environment object](https://api.fxblue.com/mytrader/scripting/markdown/062-2.12-framework-environment-object.md)
    - [2.13 Framework.Translation object](https://api.fxblue.com/mytrader/scripting/markdown/063-2.13-framework-translation-object.md)
        - [2.13.1 List of available language variables](https://api.fxblue.com/mytrader/scripting/markdown/064-2.13.1-list-of-available-language-variables.md)
        - [2.13.2 Framework.Translation.TranslateDOM()](https://api.fxblue.com/mytrader/scripting/markdown/065-2.13.2-framework-translation-translatedom.md)
        - [2.13.3 Framework.Translation.TranslateItem() and Framework.$T()](https://api.fxblue.com/mytrader/scripting/markdown/066-2.13.3-framework-translation-translateitem-and-framework-t.md)
        - [2.13.4 Framework.Translation.TranslateError()](https://api.fxblue.com/mytrader/scripting/markdown/067-2.13.4-framework-translation-translateerror.md)
        - [2.13.5 Framework.Translation.TranslateTimeframe()](https://api.fxblue.com/mytrader/scripting/markdown/068-2.13.5-framework-translation-translatetimeframe.md)
        - [2.13.6 Framework.Translation.TranslateInstrumentCategory()](https://api.fxblue.com/mytrader/scripting/markdown/069-2.13.6-framework-translation-translateinstrumentcategory.md)
    - [2.14 Framework.Theme object](https://api.fxblue.com/mytrader/scripting/markdown/070-2.14-framework-theme-object.md)
    - [2.15 FXB.Result object](https://api.fxblue.com/mytrader/scripting/markdown/071-2.15-fxb-result-object.md)
- [3 Functions in the framework](https://api.fxblue.com/mytrader/scripting/markdown/072-3-functions-in-the-framework.md)
    - [3.1 Price requests](https://api.fxblue.com/mytrader/scripting/markdown/073-3.1-price-requests.md)
    - [3.2 Historic candle data](https://api.fxblue.com/mytrader/scripting/markdown/074-3.2-historic-candle-data.md)
        - [3.2.1 Candle response messages](https://api.fxblue.com/mytrader/scripting/markdown/075-3.2.1-candle-response-messages.md)
        - [3.2.2 Terminating streaming requests](https://api.fxblue.com/mytrader/scripting/markdown/076-3.2.2-terminating-streaming-requests.md)
        - [3.2.3 Time zones for candle requests](https://api.fxblue.com/mytrader/scripting/markdown/077-3.2.3-time-zones-for-candle-requests.md)
    - [3.3 Trading](https://api.fxblue.com/mytrader/scripting/markdown/078-3.3-trading.md)
        - [3.3.1 Overview of trading requests](https://api.fxblue.com/mytrader/scripting/markdown/079-3.3.1-overview-of-trading-requests.md)
        - [3.3.2 New pending orders and trades](https://api.fxblue.com/mytrader/scripting/markdown/080-3.3.2-new-pending-orders-and-trades.md)
            - [3.3.2.1 Volume on order and trade requests](https://api.fxblue.com/mytrader/scripting/markdown/081-3.3.2.1-volume-on-order-and-trade-requests.md)
            - [3.3.2.2 Open price on pending orders](https://api.fxblue.com/mytrader/scripting/markdown/082-3.3.2.2-open-price-on-pending-orders.md)
            - [3.3.2.3 Stop-loss on orders and trades](https://api.fxblue.com/mytrader/scripting/markdown/083-3.3.2.3-stop-loss-on-orders-and-trades.md)
            - [3.3.2.4 Take-profit on orders and trades](https://api.fxblue.com/mytrader/scripting/markdown/084-3.3.2.4-take-profit-on-orders-and-trades.md)
            - [3.3.2.5 Trailing stop on orders and trades](https://api.fxblue.com/mytrader/scripting/markdown/085-3.3.2.5-trailing-stop-on-orders-and-trades.md)
            - [3.3.2.6 Expiry on pending orders](https://api.fxblue.com/mytrader/scripting/markdown/086-3.3.2.6-expiry-on-pending-orders.md)
            - [3.3.2.7 Candle-based prices in order definitions](https://api.fxblue.com/mytrader/scripting/markdown/087-3.3.2.7-candle-based-prices-in-order-definitions.md)
        - [3.3.3 Modifying open trades and pending orders](https://api.fxblue.com/mytrader/scripting/markdown/088-3.3.3-modifying-open-trades-and-pending-orders.md)
            - [3.3.3.1 Break-even exit on open trades](https://api.fxblue.com/mytrader/scripting/markdown/089-3.3.3.1-break-even-exit-on-open-trades.md)
        - [3.3.4 Closing individual trades and orders](https://api.fxblue.com/mytrader/scripting/markdown/090-3.3.4-closing-individual-trades-and-orders.md)
        - [3.3.5 Closing all open trades or pending orders on a single market](https://api.fxblue.com/mytrader/scripting/markdown/091-3.3.5-closing-all-open-trades-or-pending-orders-on-a-single-market.md)
        - [3.3.6 Closing all open trades or pending orders on the whole account](https://api.fxblue.com/mytrader/scripting/markdown/092-3.3.6-closing-all-open-trades-or-pending-orders-on-the-whole.md)
        - [3.3.7 Asynchronous result callback for SendOrder()](https://api.fxblue.com/mytrader/scripting/markdown/093-3.3.7-asynchronous-result-callback-for-sendorder.md)
        - [3.3.8 Optional settings for trading requests](https://api.fxblue.com/mytrader/scripting/markdown/094-3.3.8-optional-settings-for-trading-requests.md)
        - [3.3.9 Forcing confirmation of all subsequent trading](https://api.fxblue.com/mytrader/scripting/markdown/095-3.3.9-forcing-confirmation-of-all-subsequent-trading.md)
        - [3.3.10 Validating trading requests without execution](https://api.fxblue.com/mytrader/scripting/markdown/096-3.3.10-validating-trading-requests-without-execution.md)
    - [3.4 Account history](https://api.fxblue.com/mytrader/scripting/markdown/097-3.4-account-history.md)
    - [3.5 Dialogs](https://api.fxblue.com/mytrader/scripting/markdown/098-3.5-dialogs.md)
        - [3.5.1 Standard dialog behaviour and settings](https://api.fxblue.com/mytrader/scripting/markdown/099-3.5.1-standard-dialog-behaviour-and-settings.md)
        - [3.5.2 Common information/alert/question dialogs](https://api.fxblue.com/mytrader/scripting/markdown/100-3.5.2-common-information-alert-question-dialogs.md)
            - [3.5.2.1 Button styles for common dialogs](https://api.fxblue.com/mytrader/scripting/markdown/101-3.5.2.1-button-styles-for-common-dialogs.md)
            - [3.5.2.2 Callbacks from common dialogs](https://api.fxblue.com/mytrader/scripting/markdown/102-3.5.2.2-callbacks-from-common-dialogs.md)
            - [3.5.2.3 Manually destroying common dialogs](https://api.fxblue.com/mytrader/scripting/markdown/103-3.5.2.3-manually-destroying-common-dialogs.md)
            - [3.5.2.4 Floating, non-modal common dialogs](https://api.fxblue.com/mytrader/scripting/markdown/104-3.5.2.4-floating-non-modal-common-dialogs.md)
        - [3.5.3 Selecting a market or timeframe](https://api.fxblue.com/mytrader/scripting/markdown/105-3.5.3-selecting-a-market-or-timeframe.md)
        - [3.5.4 Asking for a text value](https://api.fxblue.com/mytrader/scripting/markdown/106-3.5.4-asking-for-a-text-value.md)
        - [3.5.5 Selecting from a list](https://api.fxblue.com/mytrader/scripting/markdown/107-3.5.5-selecting-from-a-list.md)
            - [3.5.5.1 Checkbox list](https://api.fxblue.com/mytrader/scripting/markdown/108-3.5.5.1-checkbox-list.md)
        - [3.5.6 Menu-list dialogs (with icons, sub-menus etc)](https://api.fxblue.com/mytrader/scripting/markdown/109-3.5.6-menu-list-dialogs-with-icons-sub-menus-etc.md)
        - [3.5.7 Displaying a settings dialog](https://api.fxblue.com/mytrader/scripting/markdown/110-3.5.7-displaying-a-settings-dialog.md)
        - [3.5.8 Custom HTML dialogs](https://api.fxblue.com/mytrader/scripting/markdown/111-3.5.8-custom-html-dialogs.md)
        - [3.5.9 Widget displaying itself as its own dialog](https://api.fxblue.com/mytrader/scripting/markdown/112-3.5.9-widget-displaying-itself-as-its-own-dialog.md)
        - [3.5.10 Displaying the platform's standard deal ticket](https://api.fxblue.com/mytrader/scripting/markdown/113-3.5.10-displaying-the-platform-s-standard-deal-ticket.md)
            - [3.5.10.1 Opening the dealticket or trading-action dialogs](https://api.fxblue.com/mytrader/scripting/markdown/114-3.5.10.1-opening-the-dealticket-or-trading-action-dialogs.md)
            - [3.5.10.2 Opening a chart with attached deal ticket](https://api.fxblue.com/mytrader/scripting/markdown/115-3.5.10.2-opening-a-chart-with-attached-deal-ticket.md)
            - [3.5.10.3 Selecting an order template](https://api.fxblue.com/mytrader/scripting/markdown/116-3.5.10.3-selecting-an-order-template.md)
        - [3.5.11 Notifying the user by generating mail](https://api.fxblue.com/mytrader/scripting/markdown/117-3.5.11-notifying-the-user-by-generating-mail.md)
        - [3.5.12 Toast](https://api.fxblue.com/mytrader/scripting/markdown/118-3.5.12-toast.md)
            - [3.5.12.1 Creating toast](https://api.fxblue.com/mytrader/scripting/markdown/119-3.5.12.1-creating-toast.md)
            - [3.5.12.2 Dialogs from toast clicks](https://api.fxblue.com/mytrader/scripting/markdown/120-3.5.12.2-dialogs-from-toast-clicks.md)
            - [3.5.12.3 Destroying toast](https://api.fxblue.com/mytrader/scripting/markdown/121-3.5.12.3-destroying-toast.md)
        - [3.5.13 Opening widgets in dialogs](https://api.fxblue.com/mytrader/scripting/markdown/122-3.5.13-opening-widgets-in-dialogs.md)
    - [3.6 Settings and state storage](https://api.fxblue.com/mytrader/scripting/markdown/123-3.6-settings-and-state-storage.md)
        - [3.6.1 Types of framework storage: private and category](https://api.fxblue.com/mytrader/scripting/markdown/124-3.6.1-types-of-framework-storage-private-and-category.md)
        - [3.6.2 Loading and saving category settings](https://api.fxblue.com/mytrader/scripting/markdown/125-3.6.2-loading-and-saving-category-settings.md)
        - [3.6.3 Loading and saving private settings](https://api.fxblue.com/mytrader/scripting/markdown/126-3.6.3-loading-and-saving-private-settings.md)
        - [3.6.4 Combining category settings and private settings](https://api.fxblue.com/mytrader/scripting/markdown/127-3.6.4-combining-category-settings-and-private-settings.md)
        - [3.6.5 Widget state (for new windows etc)](https://api.fxblue.com/mytrader/scripting/markdown/128-3.6.5-widget-state-for-new-windows-etc.md)
        - [3.6.6 Saving both private and category settings](https://api.fxblue.com/mytrader/scripting/markdown/129-3.6.6-saving-both-private-and-category-settings.md)
    - [3.7 Interacting with the MyTrader page container and environment](https://api.fxblue.com/mytrader/scripting/markdown/130-3.7-interacting-with-the-mytrader-page-container-and-environment.md)
        - [3.7.1 Handling context - synchronization in the page container](https://api.fxblue.com/mytrader/scripting/markdown/131-3.7.1-handling-context-synchronization-in-the-page-container.md)
        - [3.7.2 Changing the market or timeframe of the current page](https://api.fxblue.com/mytrader/scripting/markdown/132-3.7.2-changing-the-market-or-timeframe-of-the-current-page.md)
        - [3.7.3 Changing the current page displayed in MyTrader](https://api.fxblue.com/mytrader/scripting/markdown/133-3.7.3-changing-the-current-page-displayed-in-mytrader.md)
        - [3.7.4 Chart sidebar/dock widgets](https://api.fxblue.com/mytrader/scripting/markdown/134-3.7.4-chart-sidebar-dock-widgets.md)
            - [3.7.4.1 Getting and setting the chart instrument and timeframe](https://api.fxblue.com/mytrader/scripting/markdown/135-3.7.4.1-getting-and-setting-the-chart-instrument-and-timeframe.md)
            - [3.7.4.2 Chart widget dock title](https://api.fxblue.com/mytrader/scripting/markdown/136-3.7.4.2-chart-widget-dock-title.md)
            - [3.7.4.3 Chart widget height](https://api.fxblue.com/mytrader/scripting/markdown/137-3.7.4.3-chart-widget-height.md)
            - [3.7.4.4 Chart bar data and events](https://api.fxblue.com/mytrader/scripting/markdown/138-3.7.4.4-chart-bar-data-and-events.md)
            - [3.7.4.5 Creating drawings etc](https://api.fxblue.com/mytrader/scripting/markdown/139-3.7.4.5-creating-drawings-etc.md)
    - [3.8 Displaying and embedding trading charts](https://api.fxblue.com/mytrader/scripting/markdown/140-3.8-displaying-and-embedding-trading-charts.md)
        - [3.8.1 Displaying a chart as a dialog](https://api.fxblue.com/mytrader/scripting/markdown/141-3.8.1-displaying-a-chart-as-a-dialog.md)
        - [3.8.2 Embedding a trading chart in an iframe, inside a widget](https://api.fxblue.com/mytrader/scripting/markdown/142-3.8.2-embedding-a-trading-chart-in-an-iframe-inside-a-widget.md)
        - [3.8.3 Instrument and timeframe context for trading charts](https://api.fxblue.com/mytrader/scripting/markdown/143-3.8.3-instrument-and-timeframe-context-for-trading-charts.md)
        - [3.8.4 Settings for displaying trading charts](https://api.fxblue.com/mytrader/scripting/markdown/144-3.8.4-settings-for-displaying-trading-charts.md)
            - [3.8.4.1 Changing the initial chart styles and options](https://api.fxblue.com/mytrader/scripting/markdown/145-3.8.4.1-changing-the-initial-chart-styles-and-options.md)
            - [3.8.4.2 Loading indicators onto trading charts](https://api.fxblue.com/mytrader/scripting/markdown/146-3.8.4.2-loading-indicators-onto-trading-charts.md)
            - [3.8.4.3 Loading drawings onto trading charts](https://api.fxblue.com/mytrader/scripting/markdown/147-3.8.4.3-loading-drawings-onto-trading-charts.md)
            - [3.8.4.4 Loading event markers onto trading charts](https://api.fxblue.com/mytrader/scripting/markdown/148-3.8.4.4-loading-event-markers-onto-trading-charts.md)
            - [3.8.4.5 Loading bar highlights onto trading charts](https://api.fxblue.com/mytrader/scripting/markdown/149-3.8.4.5-loading-bar-highlights-onto-trading-charts.md)
            - [3.8.4.6 Populating the chart's deal ticket](https://api.fxblue.com/mytrader/scripting/markdown/150-3.8.4.6-populating-the-chart-s-deal-ticket.md)
        - [3.8.5 Modifying a chart dialog or embedded chart](https://api.fxblue.com/mytrader/scripting/markdown/151-3.8.5-modifying-a-chart-dialog-or-embedded-chart.md)
            - [3.8.5.1 Getting the ID of a chart dialog or embedded chart](https://api.fxblue.com/mytrader/scripting/markdown/152-3.8.5.1-getting-the-id-of-a-chart-dialog-or-embedded-chart.md)
            - [3.8.5.2 Passing the ID of a trading chart to ChartChange()](https://api.fxblue.com/mytrader/scripting/markdown/153-3.8.5.2-passing-the-id-of-a-trading-chart-to-chartchange.md)
    - [3.9 Interacting with trading charts](https://api.fxblue.com/mytrader/scripting/markdown/154-3.9-interacting-with-trading-charts.md)
        - [3.9.1 Callback from ChartChange()](https://api.fxblue.com/mytrader/scripting/markdown/155-3.9.1-callback-from-chartchange.md)
        - [3.9.2 Changing the market of a chart](https://api.fxblue.com/mytrader/scripting/markdown/156-3.9.2-changing-the-market-of-a-chart.md)
        - [3.9.3 Changing the timeframe of a chart](https://api.fxblue.com/mytrader/scripting/markdown/157-3.9.3-changing-the-timeframe-of-a-chart.md)
        - [3.9.4 Loading an indicator onto a chart](https://api.fxblue.com/mytrader/scripting/markdown/158-3.9.4-loading-an-indicator-onto-a-chart.md)
        - [3.9.5 Removing an indicator from a chart](https://api.fxblue.com/mytrader/scripting/markdown/159-3.9.5-removing-an-indicator-from-a-chart.md)
        - [3.9.6 Removing all indicators from a chart](https://api.fxblue.com/mytrader/scripting/markdown/160-3.9.6-removing-all-indicators-from-a-chart.md)
        - [3.9.7 Adding a drawing to a chart](https://api.fxblue.com/mytrader/scripting/markdown/161-3.9.7-adding-a-drawing-to-a-chart.md)
            - [3.9.7.1 Drawing properties](https://api.fxblue.com/mytrader/scripting/markdown/162-3.9.7.1-drawing-properties.md)
            - [3.9.7.2 Types of drawing](https://api.fxblue.com/mytrader/scripting/markdown/163-3.9.7.2-types-of-drawing.md)
        - [3.9.8 Modifying or moving a drawing](https://api.fxblue.com/mytrader/scripting/markdown/164-3.9.8-modifying-or-moving-a-drawing.md)
        - [3.9.9 Removing a drawing](https://api.fxblue.com/mytrader/scripting/markdown/165-3.9.9-removing-a-drawing.md)
        - [3.9.10 Removing all drawings from a chart](https://api.fxblue.com/mytrader/scripting/markdown/166-3.9.10-removing-all-drawings-from-a-chart.md)
        - [3.9.11 Adding an event marker to a chart](https://api.fxblue.com/mytrader/scripting/markdown/167-3.9.11-adding-an-event-marker-to-a-chart.md)
            - [3.9.11.1 Event marker properties](https://api.fxblue.com/mytrader/scripting/markdown/168-3.9.11.1-event-marker-properties.md)
            - [3.9.11.2 Click notifications from event markers](https://api.fxblue.com/mytrader/scripting/markdown/169-3.9.11.2-click-notifications-from-event-markers.md)
        - [3.9.12 Removing an event marker](https://api.fxblue.com/mytrader/scripting/markdown/170-3.9.12-removing-an-event-marker.md)
        - [3.9.13 Removing all event markers from a chart](https://api.fxblue.com/mytrader/scripting/markdown/171-3.9.13-removing-all-event-markers-from-a-chart.md)
        - [3.9.14 Adding a bar highlight to a chart](https://api.fxblue.com/mytrader/scripting/markdown/172-3.9.14-adding-a-bar-highlight-to-a-chart.md)
        - [3.9.15 Removing a bar highlight](https://api.fxblue.com/mytrader/scripting/markdown/173-3.9.15-removing-a-bar-highlight.md)
        - [3.9.16 Removing all bar highlights](https://api.fxblue.com/mytrader/scripting/markdown/174-3.9.16-removing-all-bar-highlights.md)
        - [3.9.17 Adding HTML to a chart](https://api.fxblue.com/mytrader/scripting/markdown/175-3.9.17-adding-html-to-a-chart.md)
            - [3.9.17.1 HTML options](https://api.fxblue.com/mytrader/scripting/markdown/176-3.9.17.1-html-options.md)
            - [3.9.17.2 Co-ordinates for the HTML](https://api.fxblue.com/mytrader/scripting/markdown/177-3.9.17.2-co-ordinates-for-the-html.md)
            - [3.9.17.3 Sending messages from the HTML to its creator](https://api.fxblue.com/mytrader/scripting/markdown/178-3.9.17.3-sending-messages-from-the-html-to-its-creator.md)
            - [3.9.17.4 Sending messages from the widget/script to the HTML](https://api.fxblue.com/mytrader/scripting/markdown/179-3.9.17.4-sending-messages-from-the-widget-script-to-the-html.md)
            - [3.9.17.5 Removing the HTML from the chart](https://api.fxblue.com/mytrader/scripting/markdown/180-3.9.17.5-removing-the-html-from-the-chart.md)
        - [3.9.18 Populating a chart's deal ticket](https://api.fxblue.com/mytrader/scripting/markdown/181-3.9.18-populating-a-chart-s-deal-ticket.md)
            - [3.9.18.1 Hiding the deal ticket](https://api.fxblue.com/mytrader/scripting/markdown/182-3.9.18.1-hiding-the-deal-ticket.md)
        - [3.9.19 Retrieving data from a chart](https://api.fxblue.com/mytrader/scripting/markdown/183-3.9.19-retrieving-data-from-a-chart.md)
        - [3.9.20 Loading named indicator studies and chart templates](https://api.fxblue.com/mytrader/scripting/markdown/184-3.9.20-loading-named-indicator-studies-and-chart-templates.md)
            - [3.9.20.1 Loading an indicator study (replacing all existing indicators)](https://api.fxblue.com/mytrader/scripting/markdown/185-3.9.20.1-loading-an-indicator-study-replacing-all-existing-indicators.md)
            - [3.9.20.2 Adding an indicator study (keeping existing indicators)](https://api.fxblue.com/mytrader/scripting/markdown/186-3.9.20.2-adding-an-indicator-study-keeping-existing-indicators.md)
            - [3.9.20.3 Loading a chart template](https://api.fxblue.com/mytrader/scripting/markdown/187-3.9.20.3-loading-a-chart-template.md)
    - [3.10 Communicating between widgets/scripts/UDIXes](https://api.fxblue.com/mytrader/scripting/markdown/188-3.10-communicating-between-widgets-scripts-udixes.md)
    - [3.11 Time conversion functions](https://api.fxblue.com/mytrader/scripting/markdown/189-3.11-time-conversion-functions.md)
        - [3.11.1 Time zone definitions](https://api.fxblue.com/mytrader/scripting/markdown/190-3.11.1-time-zone-definitions.md)
        - [3.11.2 Getting the current time - Framework.Now()](https://api.fxblue.com/mytrader/scripting/markdown/191-3.11.2-getting-the-current-time-framework-now.md)
        - [3.11.2 Converting between UTC and a different time zone](https://api.fxblue.com/mytrader/scripting/markdown/192-3.11.2-converting-between-utc-and-a-different-time-zone.md)
        - [3.11.3 The user's time zone preferences](https://api.fxblue.com/mytrader/scripting/markdown/193-3.11.3-the-user-s-time-zone-preferences.md)
    - [3.12 Helper functions for formatting values](https://api.fxblue.com/mytrader/scripting/markdown/194-3.12-helper-functions-for-formatting-values.md)
        - [3.12.1 Framework.FormatNumber()](https://api.fxblue.com/mytrader/scripting/markdown/195-3.12.1-framework-formatnumber.md)
        - [3.12.2 Framework.FormatCash()](https://api.fxblue.com/mytrader/scripting/markdown/196-3.12.2-framework-formatcash.md)
        - [3.12.3 Framework.FormatPercent()](https://api.fxblue.com/mytrader/scripting/markdown/197-3.12.3-framework-formatpercent.md)
        - [3.12.4 Framework.FormatVolume()](https://api.fxblue.com/mytrader/scripting/markdown/198-3.12.4-framework-formatvolume.md)
        - [3.12.5 Framework.FormatDate()](https://api.fxblue.com/mytrader/scripting/markdown/199-3.12.5-framework-formatdate.md)
        - [3.12.6 Framework.DisplayPrice()](https://api.fxblue.com/mytrader/scripting/markdown/200-3.12.6-framework-displayprice.md)
        - [3.12.7 Generating a textual description of an order or trading action](https://api.fxblue.com/mytrader/scripting/markdown/201-3.12.7-generating-a-textual-description-of-an-order-or-trading.md)
    - [3.13 Trading validators](https://api.fxblue.com/mytrader/scripting/markdown/202-3.13-trading-validators.md)
    - [3.14 Market depth and order book](https://api.fxblue.com/mytrader/scripting/markdown/203-3.14-market-depth-and-order-book.md)
        - [3.14.1 Market depth](https://api.fxblue.com/mytrader/scripting/markdown/204-3.14.1-market-depth.md)
        - [3.14.2 Order book](https://api.fxblue.com/mytrader/scripting/markdown/205-3.14.2-order-book.md)
    - [3.15 Economic calendar](https://api.fxblue.com/mytrader/scripting/markdown/206-3.15-economic-calendar.md)
    - [3.16 The MyTrader mail system](https://api.fxblue.com/mytrader/scripting/markdown/207-3.16-the-mytrader-mail-system.md)
        - [3.16.1 Availability of the mail system](https://api.fxblue.com/mytrader/scripting/markdown/208-3.16.1-availability-of-the-mail-system.md)
        - [3.16.2 Overview of the mail system](https://api.fxblue.com/mytrader/scripting/markdown/209-3.16.2-overview-of-the-mail-system.md)
        - [3.16.3 Sending mail](https://api.fxblue.com/mytrader/scripting/markdown/210-3.16.3-sending-mail.md)
        - [3.16.4 Receiving mail](https://api.fxblue.com/mytrader/scripting/markdown/211-3.16.4-receiving-mail.md)
    - [3.17 Logging](https://api.fxblue.com/mytrader/scripting/markdown/212-3.17-logging.md)
    - [3.18 Miscellaneous functions](https://api.fxblue.com/mytrader/scripting/markdown/213-3.18-miscellaneous-functions.md)
        - [3.18.1 Generating downloads](https://api.fxblue.com/mytrader/scripting/markdown/214-3.18.1-generating-downloads.md)
        - [3.18.2 Copying text to the clipboard](https://api.fxblue.com/mytrader/scripting/markdown/215-3.18.2-copying-text-to-the-clipboard.md)
- [4 Messages and event handlers](https://api.fxblue.com/mytrader/scripting/markdown/216-4-messages-and-event-handlers.md)
    - [4.1 The FXB.Message object, and multiple types](https://api.fxblue.com/mytrader/scripting/markdown/217-4.1-the-fxb-message-object-and-multiple-types.md)
    - [4.2 Extra data in each message](https://api.fxblue.com/mytrader/scripting/markdown/218-4.2-extra-data-in-each-message.md)
    - [4.3 Types of message](https://api.fxblue.com/mytrader/scripting/markdown/219-4.3-types-of-message.md)
    - [4.4 FXB.MessageTypes.PRICE and OnPriceChange](https://api.fxblue.com/mytrader/scripting/markdown/220-4.4-fxb-messagetypes-price-and-onpricechange.md)
        - [4.4.1 PRICE messages in OnMessage](https://api.fxblue.com/mytrader/scripting/markdown/221-4.4.1-price-messages-in-onmessage.md)
        - [4.4.2 OnPriceChange handler](https://api.fxblue.com/mytrader/scripting/markdown/222-4.4.2-onpricechange-handler.md)
    - [4.5 FXB.MessageTypes.ORDER_x and OnOrderX handlers](https://api.fxblue.com/mytrader/scripting/markdown/223-4.5-fxb-messagetypes-order-x-and-onorderx-handlers.md)
        - [4.5.1 ORDER_x messages in OnMessage](https://api.fxblue.com/mytrader/scripting/markdown/224-4.5.1-order-x-messages-in-onmessage.md)
        - [4.5.2 OnOrderX handlers](https://api.fxblue.com/mytrader/scripting/markdown/225-4.5.2-onorderx-handlers.md)
    - [4.6 FXB.MessageTypes.POSITION_CHANGE and OnPositionChange](https://api.fxblue.com/mytrader/scripting/markdown/226-4.6-fxb-messagetypes-position-change-and-onpositionchange.md)
        - [4.6.1 POSITION_CHANGE message in OnMessage](https://api.fxblue.com/mytrader/scripting/markdown/227-4.6.1-position-change-message-in-onmessage.md)
        - [4.6.2 OnPositionChange handler](https://api.fxblue.com/mytrader/scripting/markdown/228-4.6.2-onpositionchange-handler.md)
    - [4.7 FXB.MessageTypes.ACCOUNT_METRICS and OnAccountMetrics](https://api.fxblue.com/mytrader/scripting/markdown/229-4.7-fxb-messagetypes-account-metrics-and-onaccountmetrics.md)
        - [4.7.1 ACCOUNT_METRICS message in OnMessage](https://api.fxblue.com/mytrader/scripting/markdown/230-4.7.1-account-metrics-message-in-onmessage.md)
        - [4.7.2 OnAccountMetrics handler](https://api.fxblue.com/mytrader/scripting/markdown/231-4.7.2-onaccountmetrics-handler.md)
    - [4.8 FXB.MessageTypes.ACCOUNT_HISTORY](https://api.fxblue.com/mytrader/scripting/markdown/232-4.8-fxb-messagetypes-account-history.md)
    - [4.9 FXB.MessageTypes.MARKET_DEPTH](https://api.fxblue.com/mytrader/scripting/markdown/233-4.9-fxb-messagetypes-market-depth.md)
    - [4.10 FXB.MessageTypes.ORDER_BOOK](https://api.fxblue.com/mytrader/scripting/markdown/234-4.10-fxb-messagetypes-order-book.md)
    - [4.11 FXB.MessageTypes.MAILBOX](https://api.fxblue.com/mytrader/scripting/markdown/235-4.11-fxb-messagetypes-mailbox.md)
    - [4.12 FXB.MessageTypes.THEME](https://api.fxblue.com/mytrader/scripting/markdown/236-4.12-fxb-messagetypes-theme.md)
    - [4.13 FXB.MessageTypes.CATEGORY_SETTINGS_CHANGE](https://api.fxblue.com/mytrader/scripting/markdown/237-4.13-fxb-messagetypes-category-settings-change.md)
    - [4.14 FXB.MessageTypes.WIDGET_CONTEXT_CHANGE](https://api.fxblue.com/mytrader/scripting/markdown/238-4.14-fxb-messagetypes-widget-context-change.md)
    - [4.15 FXB.MessageTypes.WIDGET_INSTRUMENT_SELECTION](https://api.fxblue.com/mytrader/scripting/markdown/239-4.15-fxb-messagetypes-widget-instrument-selection.md)
    - [4.16 FXB.MessageTypes.SHORTCUT_KEY](https://api.fxblue.com/mytrader/scripting/markdown/240-4.16-fxb-messagetypes-shortcut-key.md)
    - [4.17 FXB.MessageTypes.BROADCASTx and FXB.MessageTypes.GENERICx](https://api.fxblue.com/mytrader/scripting/markdown/241-4.17-fxb-messagetypes-broadcastx-and-fxb-messagetypes-genericx.md)
- [5 Working with candle data](https://api.fxblue.com/mytrader/scripting/markdown/242-5-working-with-candle-data.md)
    - [5.1 The FXB.CandleStore object](https://api.fxblue.com/mytrader/scripting/markdown/243-5.1-the-fxb-candlestore-object.md)
        - [5.1.1 Creating a candle store](https://api.fxblue.com/mytrader/scripting/markdown/244-5.1.1-creating-a-candle-store.md)
        - [5.1.2 Loading data into the candle store](https://api.fxblue.com/mytrader/scripting/markdown/245-5.1.2-loading-data-into-the-candle-store.md)
        - [5.1.3 Events in the candle store](https://api.fxblue.com/mytrader/scripting/markdown/246-5.1.3-events-in-the-candle-store.md)
        - [5.1.4 Reading data from the candle store](https://api.fxblue.com/mytrader/scripting/markdown/247-5.1.4-reading-data-from-the-candle-store.md)
        - [5.1.5 Derived properties of each candle](https://api.fxblue.com/mytrader/scripting/markdown/248-5.1.5-derived-properties-of-each-candle.md)
        - [5.1.6 Technical analysis calculations in the candle store](https://api.fxblue.com/mytrader/scripting/markdown/249-5.1.6-technical-analysis-calculations-in-the-candle-store.md)
        - [5.1.7 Aggregation to higher timeframes](https://api.fxblue.com/mytrader/scripting/markdown/250-5.1.7-aggregation-to-higher-timeframes.md)
    - [5.2 FXB.ta technical analysis library](https://api.fxblue.com/mytrader/scripting/markdown/251-5.2-fxb-ta-technical-analysis-library.md)
        - [5.2.1 Calculation input: bar-based versus value-based calculations](https://api.fxblue.com/mytrader/scripting/markdown/252-5.2.1-calculation-input-bar-based-versus-value-based-calculations.md)
        - [5.2.2 Creating and initialising technical analysis calculations](https://api.fxblue.com/mytrader/scripting/markdown/253-5.2.2-creating-and-initialising-technical-analysis-calculations.md)
            - [5.2.2.1 The member parameter, and derived prices](https://api.fxblue.com/mytrader/scripting/markdown/254-5.2.2.1-the-member-parameter-and-derived-prices.md)
        - [5.2.3 Loading data into a technical analysis calculation](https://api.fxblue.com/mytrader/scripting/markdown/255-5.2.3-loading-data-into-a-technical-analysis-calculation.md)
            - [5.2.3.1 Loading candle data into a calculation](https://api.fxblue.com/mytrader/scripting/markdown/256-5.2.3.1-loading-candle-data-into-a-calculation.md)
            - [5.2.3.2 Loading value data into a calculation](https://api.fxblue.com/mytrader/scripting/markdown/257-5.2.3.2-loading-value-data-into-a-calculation.md)
            - [5.2.3.3 Loading data in the calculation's initialisation](https://api.fxblue.com/mytrader/scripting/markdown/258-5.2.3.3-loading-data-in-the-calculation-s-initialisation.md)
        - [5.2.4 Reading calculation output](https://api.fxblue.com/mytrader/scripting/markdown/259-5.2.4-reading-calculation-output.md)
        - [5.2.5 Indexing order and oldestFirst](https://api.fxblue.com/mytrader/scripting/markdown/260-5.2.5-indexing-order-and-oldestfirst.md)
        - [5.2.6 Combining arrays](https://api.fxblue.com/mytrader/scripting/markdown/261-5.2.6-combining-arrays.md)
        - [5.2.7 Moving averages](https://api.fxblue.com/mytrader/scripting/markdown/262-5.2.7-moving-averages.md)
        - [5.2.8 List of technical analysis calculations](https://api.fxblue.com/mytrader/scripting/markdown/263-5.2.8-list-of-technical-analysis-calculations.md)
            - [Accumulative Swing Index - FXB.ta.ASI](https://api.fxblue.com/mytrader/scripting/markdown/264-accumulative-swing-index-fxb-ta-asi.md)
            - [ADX - FXB.ta.ADX](https://api.fxblue.com/mytrader/scripting/markdown/265-adx-fxb-ta-adx.md)
            - [Aroon - FXB.ta.Aroon](https://api.fxblue.com/mytrader/scripting/markdown/266-aroon-fxb-ta-aroon.md)
            - [Aroon oscillator - FXB.ta.AroonOsc](https://api.fxblue.com/mytrader/scripting/markdown/267-aroon-oscillator-fxb-ta-aroonosc.md)
            - [Average True Range - FXB.ta.ATR](https://api.fxblue.com/mytrader/scripting/markdown/268-average-true-range-fxb-ta-atr.md)
            - [Awesome Oscillator - FXB.ta.AO](https://api.fxblue.com/mytrader/scripting/markdown/269-awesome-oscillator-fxb-ta-ao.md)
            - [Bear/Bull power - FXB.ta.BearBull](https://api.fxblue.com/mytrader/scripting/markdown/270-bear-bull-power-fxb-ta-bearbull.md)
            - [Bollinger® bands - FXB.ta.Bands](https://api.fxblue.com/mytrader/scripting/markdown/271-bollinger-bands-fxb-ta-bands.md)
            - [Centre of Gravity - FXB.ta.COG](https://api.fxblue.com/mytrader/scripting/markdown/272-centre-of-gravity-fxb-ta-cog.md)
            - [Commodity channel index - FXB.ta.CCI](https://api.fxblue.com/mytrader/scripting/markdown/273-commodity-channel-index-fxb-ta-cci.md)
            - [Chaikin Money Flow - FXB.ta.CMF](https://api.fxblue.com/mytrader/scripting/markdown/274-chaikin-money-flow-fxb-ta-cmf.md)
            - [Chaikin volatility - FXB.ta.ChaikinVolatility](https://api.fxblue.com/mytrader/scripting/markdown/275-chaikin-volatility-fxb-ta-chaikinvolatility.md)
            - [Chande forecast oscillator - FXB.ta.CFO](https://api.fxblue.com/mytrader/scripting/markdown/276-chande-forecast-oscillator-fxb-ta-cfo.md)
            - [Chande momentum oscillator - FXB.ta.CMO](https://api.fxblue.com/mytrader/scripting/markdown/277-chande-momentum-oscillator-fxb-ta-cmo.md)
            - [Coppock curve - FXB.ta.CoppockCurve](https://api.fxblue.com/mytrader/scripting/markdown/278-coppock-curve-fxb-ta-coppockcurve.md)
            - [Derived price - FXB.ta.DerivedPrice](https://api.fxblue.com/mytrader/scripting/markdown/279-derived-price-fxb-ta-derivedprice.md)
            - [Detrended price oscillator - FXB.ta.DPO](https://api.fxblue.com/mytrader/scripting/markdown/280-detrended-price-oscillator-fxb-ta-dpo.md)
            - [Ease of movement - FXB.ta.EOM](https://api.fxblue.com/mytrader/scripting/markdown/281-ease-of-movement-fxb-ta-eom.md)
            - [Ehler Fisher transform - FXB.ta.EFT](https://api.fxblue.com/mytrader/scripting/markdown/282-ehler-fisher-transform-fxb-ta-eft.md)
            - [Elder Market Thermometer - FXB.ta.EMT](https://api.fxblue.com/mytrader/scripting/markdown/283-elder-market-thermometer-fxb-ta-emt.md)
            - [Elder Force Index - FXB.ta.EFI](https://api.fxblue.com/mytrader/scripting/markdown/284-elder-force-index-fxb-ta-efi.md)
            - [Envelope around a moving average - FXB.ta.Envelope](https://api.fxblue.com/mytrader/scripting/markdown/285-envelope-around-a-moving-average-fxb-ta-envelope.md)
            - [Fractal bands - FXB.ta.FractalBands](https://api.fxblue.com/mytrader/scripting/markdown/286-fractal-bands-fxb-ta-fractalbands.md)
            - [Gopalakrishnan range index - FXB.ta.GRI](https://api.fxblue.com/mytrader/scripting/markdown/287-gopalakrishnan-range-index-fxb-ta-gri.md)
            - [Highest of the last N values - FXB.ta.Highest](https://api.fxblue.com/mytrader/scripting/markdown/288-highest-of-the-last-n-values-fxb-ta-highest.md)
            - [Historical Volatility - FXB.ta.HV](https://api.fxblue.com/mytrader/scripting/markdown/289-historical-volatility-fxb-ta-hv.md)
            - [Intraday momentum index - FXB.ta.IMI](https://api.fxblue.com/mytrader/scripting/markdown/290-intraday-momentum-index-fxb-ta-imi.md)
            - [Keltner channel and STARC - FXB.ta.Keltner](https://api.fxblue.com/mytrader/scripting/markdown/291-keltner-channel-and-starc-fxb-ta-keltner.md)
            - [Klinger volume oscillator - FXB.ta.KVO](https://api.fxblue.com/mytrader/scripting/markdown/292-klinger-volume-oscillator-fxb-ta-kvo.md)
            - [Linear regression forecast - FXB.ta.LRF](https://api.fxblue.com/mytrader/scripting/markdown/293-linear-regression-forecast-fxb-ta-lrf.md)
            - [Linear regression intercept - FXB.ta.LRI](https://api.fxblue.com/mytrader/scripting/markdown/294-linear-regression-intercept-fxb-ta-lri.md)
            - [Lowest of the last N values - FXB.ta.Lowest](https://api.fxblue.com/mytrader/scripting/markdown/295-lowest-of-the-last-n-values-fxb-ta-lowest.md)
            - [MACD - FXB.ta.MACD](https://api.fxblue.com/mytrader/scripting/markdown/296-macd-fxb-ta-macd.md)
            - [Market facilitation index - FXB.ta.MktFacilitation](https://api.fxblue.com/mytrader/scripting/markdown/297-market-facilitation-index-fxb-ta-mktfacilitation.md)
            - [Mass index - FXB.ta.MassIndex](https://api.fxblue.com/mytrader/scripting/markdown/298-mass-index-fxb-ta-massindex.md)
            - [Momentum oscillator - FXB.ta.Momentum](https://api.fxblue.com/mytrader/scripting/markdown/299-momentum-oscillator-fxb-ta-momentum.md)
            - [Money Flow Index - FXB.ta.MoneyFlowIndex](https://api.fxblue.com/mytrader/scripting/markdown/300-money-flow-index-fxb-ta-moneyflowindex.md)
            - [Moving average oscillator - FXB.ta.MAOscillator](https://api.fxblue.com/mytrader/scripting/markdown/301-moving-average-oscillator-fxb-ta-maoscillator.md)
            - [On-balance volume - FXB.ta.OBV](https://api.fxblue.com/mytrader/scripting/markdown/302-on-balance-volume-fxb-ta-obv.md)
            - [Parabolic stop and reverse - FXB.ta.PSAR](https://api.fxblue.com/mytrader/scripting/markdown/303-parabolic-stop-and-reverse-fxb-ta-psar.md)
            - [Performance - FXB.ta.Performance](https://api.fxblue.com/mytrader/scripting/markdown/304-performance-fxb-ta-performance.md)
            - [Pretty Good oscillator - FXB.ta.PGO](https://api.fxblue.com/mytrader/scripting/markdown/305-pretty-good-oscillator-fxb-ta-pgo.md)
            - [Price Oscillator - FXB.ta.PO](https://api.fxblue.com/mytrader/scripting/markdown/306-price-oscillator-fxb-ta-po.md)
            - [QStick - FXB.ta.QStick](https://api.fxblue.com/mytrader/scripting/markdown/307-qstick-fxb-ta-qstick.md)
            - [Rainbow oscillator - FXB.ta.Rainbow](https://api.fxblue.com/mytrader/scripting/markdown/308-rainbow-oscillator-fxb-ta-rainbow.md)
            - [Random Walk Index - FXB.ta.RWI](https://api.fxblue.com/mytrader/scripting/markdown/309-random-walk-index-fxb-ta-rwi.md)
            - [Rank - FXB.ta.Rank](https://api.fxblue.com/mytrader/scripting/markdown/310-rank-fxb-ta-rank.md)
            - [Rate of change - FXB.ta.ROC](https://api.fxblue.com/mytrader/scripting/markdown/311-rate-of-change-fxb-ta-roc.md)
            - [RAVI - FXB.ta.RAVI](https://api.fxblue.com/mytrader/scripting/markdown/312-ravi-fxb-ta-ravi.md)
            - [Relative Strength Index - FXB.ta.RSI](https://api.fxblue.com/mytrader/scripting/markdown/313-relative-strength-index-fxb-ta-rsi.md)
            - [Relative Vigor Index - FXB.ta.RVI](https://api.fxblue.com/mytrader/scripting/markdown/314-relative-vigor-index-fxb-ta-rvi.md)
            - [R-squared - FXB.ta.RSquared](https://api.fxblue.com/mytrader/scripting/markdown/315-r-squared-fxb-ta-rsquared.md)
            - [Schaff trend cycle - FXB.ta.STC](https://api.fxblue.com/mytrader/scripting/markdown/316-schaff-trend-cycle-fxb-ta-stc.md)
            - [Slope of linear regression - FXB.ta.Slope](https://api.fxblue.com/mytrader/scripting/markdown/317-slope-of-linear-regression-fxb-ta-slope.md)
            - [Standard deviation - FXB.ta.Stdev](https://api.fxblue.com/mytrader/scripting/markdown/318-standard-deviation-fxb-ta-stdev.md)
            - [Stochastic momentum index - FXB.ta.SMI](https://api.fxblue.com/mytrader/scripting/markdown/319-stochastic-momentum-index-fxb-ta-smi.md)
            - [Stochastic oscillator - FXB.ta.Stochastic](https://api.fxblue.com/mytrader/scripting/markdown/320-stochastic-oscillator-fxb-ta-stochastic.md)
            - [Stochastic RSI - FXB.ta.StochRSI](https://api.fxblue.com/mytrader/scripting/markdown/321-stochastic-rsi-fxb-ta-stochrsi.md)
            - [Sum - FXB.ta.Sum](https://api.fxblue.com/mytrader/scripting/markdown/322-sum-fxb-ta-sum.md)
            - [Swing index - FXB.ta.SwingIndex](https://api.fxblue.com/mytrader/scripting/markdown/323-swing-index-fxb-ta-swingindex.md)
            - [TRIX - FXB.ta.Trix](https://api.fxblue.com/mytrader/scripting/markdown/324-trix-fxb-ta-trix.md)
            - [True range - FXB.ta.TrueRange](https://api.fxblue.com/mytrader/scripting/markdown/325-true-range-fxb-ta-truerange.md)
            - [Twiggs Money Flow - FXB.ta.TMF](https://api.fxblue.com/mytrader/scripting/markdown/326-twiggs-money-flow-fxb-ta-tmf.md)
            - [Ultimate oscillator - FXB.ta.UO](https://api.fxblue.com/mytrader/scripting/markdown/327-ultimate-oscillator-fxb-ta-uo.md)
            - [Vertical horizontal filter - FXB.ta.VHF](https://api.fxblue.com/mytrader/scripting/markdown/328-vertical-horizontal-filter-fxb-ta-vhf.md)
            - [Volume Index - FXB.ta.VolumeIndex](https://api.fxblue.com/mytrader/scripting/markdown/329-volume-index-fxb-ta-volumeindex.md)
            - [Williams Accumulation Distribution - FXB.ta.WAD](https://api.fxblue.com/mytrader/scripting/markdown/330-williams-accumulation-distribution-fxb-ta-wad.md)
            - [Williams %R - FXB.ta.WilliamsPctR](https://api.fxblue.com/mytrader/scripting/markdown/331-williams-r-fxb-ta-williamspctr.md)
- [6 Widget HTML and CSS reference](https://api.fxblue.com/mytrader/scripting/markdown/332-6-widget-html-and-css-reference.md)
    - [6.1 CSS reference](https://api.fxblue.com/mytrader/scripting/markdown/333-6.1-css-reference.md)
        - [6.1.1 Body classes](https://api.fxblue.com/mytrader/scripting/markdown/334-6.1.1-body-classes.md)
        - [6.1.2 Right-to-left reading order](https://api.fxblue.com/mytrader/scripting/markdown/335-6.1.2-right-to-left-reading-order.md)
        - [6.1.3 Button CSS classes](https://api.fxblue.com/mytrader/scripting/markdown/336-6.1.3-button-css-classes.md)
        - [6.1.4 FontAwesome icons](https://api.fxblue.com/mytrader/scripting/markdown/337-6.1.4-fontawesome-icons.md)
        - [6.1.5 CSS variables](https://api.fxblue.com/mytrader/scripting/markdown/338-6.1.5-css-variables.md)
    - [6.2 Standard HTML structure](https://api.fxblue.com/mytrader/scripting/markdown/339-6.2-standard-html-structure.md)
        - [6.2.1 Standard dialog structure](https://api.fxblue.com/mytrader/scripting/markdown/340-6.2.1-standard-dialog-structure.md)
        - [6.2.2 Reserved areas in the widget frame](https://api.fxblue.com/mytrader/scripting/markdown/341-6.2.2-reserved-areas-in-the-widget-frame.md)
    - [6.3 Pop-up menus](https://api.fxblue.com/mytrader/scripting/markdown/342-6.3-pop-up-menus.md)
- [7 FXB.utils and other helper functions](https://api.fxblue.com/mytrader/scripting/markdown/343-7-fxb-utils-and-other-helper-functions.md)
    - [7.1 FXB.utils.Dictionary()](https://api.fxblue.com/mytrader/scripting/markdown/344-7.1-fxb-utils-dictionary.md)
    - [7.2 FXB.utils.Clone()](https://api.fxblue.com/mytrader/scripting/markdown/345-7.2-fxb-utils-clone.md)
    - [7.3 FXB.utils.IsEmpty()](https://api.fxblue.com/mytrader/scripting/markdown/346-7.3-fxb-utils-isempty.md)
    - [7.4 FXB.utils.GenerateGuid()](https://api.fxblue.com/mytrader/scripting/markdown/347-7.4-fxb-utils-generateguid.md)
    - [7.5 FXB.utils.GenerateHash()](https://api.fxblue.com/mytrader/scripting/markdown/348-7.5-fxb-utils-generatehash.md)
    - [7.6 $$()](https://api.fxblue.com/mytrader/scripting/markdown/349-7.6-section.md)
- [8 Framework error codes](https://api.fxblue.com/mytrader/scripting/markdown/350-8-framework-error-codes.md)
    - [8.1 Success/no-failure values](https://api.fxblue.com/mytrader/scripting/markdown/351-8.1-success-no-failure-values.md)
    - [8.2 Not-yet-implemented errors](https://api.fxblue.com/mytrader/scripting/markdown/352-8.2-not-yet-implemented-errors.md)
    - [8.3 Failed internal validation of trading actions](https://api.fxblue.com/mytrader/scripting/markdown/353-8.3-failed-internal-validation-of-trading-actions.md)
    - [8.4 Trading requests blocked by user settings/preferences](https://api.fxblue.com/mytrader/scripting/markdown/354-8.4-trading-requests-blocked-by-user-settings-preferences.md)
    - [8.5 Rejection by trading validators](https://api.fxblue.com/mytrader/scripting/markdown/355-8.5-rejection-by-trading-validators.md)
    - [8.6 Trading requests rejected by the broker platform](https://api.fxblue.com/mytrader/scripting/markdown/356-8.6-trading-requests-rejected-by-the-broker-platform.md)
    - [8.7 Other (non-trading) errors](https://api.fxblue.com/mytrader/scripting/markdown/357-8.7-other-non-trading-errors.md)
- [9 Script contexts](https://api.fxblue.com/mytrader/scripting/markdown/358-9-script-contexts.md)
    - [9.1 Quote Board script context](https://api.fxblue.com/mytrader/scripting/markdown/359-9.1-quote-board-script-context.md)
    - [9.2 Trade List script context](https://api.fxblue.com/mytrader/scripting/markdown/360-9.2-trade-list-script-context.md)
    - [9.3 Chart script context](https://api.fxblue.com/mytrader/scripting/markdown/361-9.3-chart-script-context.md)
    - [9.4 Order Menu script context](https://api.fxblue.com/mytrader/scripting/markdown/362-9.4-order-menu-script-context.md)
- [10 Sending mail into MyTrader from outside the platform](https://api.fxblue.com/mytrader/scripting/markdown/363-10-sending-mail-into-mytrader-from-outside-the-platform.md)