🖥️
AutoShares
  • Deploy Apps with AutoShares API
  • User guide
    • Introduction
    • Web Trader
      • Getting Started
      • Platform Layout
      • User Widgets
        • Account Information
        • Account Opening
          • Account Funding
            • ACH Transfers
            • Check Transfers
            • Wire Transfers
        • Chart
        • News
        • Trade Ticket
          • Mutual Funds Trade Ticket
        • Watchlists
        • Orders
        • Positions
        • Market Depth
        • Options
        • Hotkeys
    • Digital Advisor
      • Getting Started
      • Selecting an Investment Model
      • Portfolio Tab
      • Trading Tab
      • Activity Tab
      • Funding Tab
    • WebTrader for iOS
      • Getting Started
      • App Layout
      • Watchlist & Quotes View
        • Trade View
          • Stock Trading
          • Options Trading
      • Positions View
      • Orders View
      • Price Alerts View
      • Account View
      • Apple Watch Extension
    • Web Trader for Android
      • Getting Started
      • App Layout
      • Watchlist & Quote View
        • Trade View
      • Price Alerts
      • Accounts & Settings
    • Knowledge Base
      • Troubleshooting
        • Performance
          • Tips for Enhancing Performance
      • How-To Guides
        • Trading Accounts
          • How to Create a New Trading Account
        • Security
          • How to Enable Two-Factor Authentication
  • REST API
    • Introduction
    • Trading API
      • Overview
      • Authentication
        • Single-Factor Authentication
          • Syntax
        • Two-Factor Authentication
          • Syntax
      • User Registration
        • Get Required Fields
        • Register a User
      • Managing Users
        • Get User's Info
          • Syntax
        • Get User's Trading Settings
        • Get Mobile App Settings
        • Get User's Exchanges
        • Modify User's Settings
        • Update User's Password
      • Trading Accounts
        • Get Account's Balance Info
          • Syntax
        • Get Account's History
          • Syntax
        • List User's Accounts
          • Syntax
      • Password Reset
        • 1. Reset Trader's Password
        • 2. Retrieve the Secret Question
        • 3. Generate a Token For a New Password
        • 4. Update the Password
      • Trading Accounts
        • Open a New Trading Account
      • Account Funding
        • Create an ACH Relationship
        • Get an ACH Relationship
        • Get All ACH Relationships
        • Get the Default ACH Relationship
        • Modify an ACH Relationship
        • Delete an ACH Relationship
        • Approve an ACH Relationship
        • Deposit / Withdraw Funds via ACH
        • Cancel an ACH Transfer
        • Get All Transfers
      • Orders
        • Verify Order Placement
          • Syntax
        • Place Order
          • Syntax
        • Verify Order Replacement
          • Syntax
        • Replace Order
          • Syntax
        • Cancel an Order
          • Syntax
        • Get Order's Info
          • Syntax
        • Get Filtered Orders
          • Syntax
      • Positions
        • Get User's Positions
          • Syntax
        • Get User's Positions in a Security
          • Syntax
        • Get Market Value of all Security Groups
      • Securities
        • Get Equity Info by Internal ID
          • Syntax
        • Get Equity Info by Ticker
          • Syntax
        • Get Equity Info by Mask
          • Syntax
        • Get Filtered Equities
          • Syntax
        • Get Option Info by Internal ID
          • Syntax
        • Get Option Info by Ticker
          • Syntax
        • Get Options Expiration Dates
          • Syntax
        • Get an Option Chain
        • Get Filtered Options
          • Syntax
      • Watchlists
        • Add Security to Watchlist by ID
          • Syntax
        • Add Security to Watchlist by Ticker
          • Syntax
        • Create New Watchlist
          • Syntax
        • Delete Watchlist
          • Syntax
        • Get Specific Watchlist
          • Syntax
        • Get User's Watchlists
          • Syntax
        • Remove Security From Watchlist by ID
          • Syntax
        • Remove Security from Watchlist by Ticker
          • Syntax
        • Rename Watchlist
          • Syntax
      • Price Alerts
        • Create Price Alert
          • Syntax
        • Delete Price Alert
          • Syntax
        • Get Specific Alert
          • Syntax
        • Get User's Price Alerts
          • Syntax
        • Modify Price Alert
          • Syntax
      • Historical Data
        • Get Comparison Chart Data
          • Syntax
        • Get Candles and Indicators for a Security
          • Syntax
        • Get Chart Data in the Excel Format
          • Syntax
      • News
        • Get News for a Security
        • Get Corporate Actions for a Security
      • User Feedback
        • Submit Feedback
          • Syntax
      • Managing Transactions
        • Get Transactions
          • Syntax
      • Streaming Data
        • Quotes
        • Orders
        • Positions
        • Watchlists
        • Account Balances
      • Code Samples
        • Basic Authentication
        • Two-Factor Autentication
        • Placing New Orders
        • Get User Information
        • List User Positions
        • Get Trading Data for Charts
      • Terms and Definitions
        • Part I
        • Part II
        • Part III
Powered by GitBook
On this page
  • Overview
  • Enquired Security Syntax
  • Sample CURL
  • Response
  • Common Mistakes
  • Failing to Specify the Et-App-Key Parameter
  • Incorrectly Specifying the Request Body
  1. REST API
  2. Trading API
  3. Historical Data

Get Candles and Indicators for a Security

Fetch candles and indicators for a particular security

PreviousSyntaxNextSyntax

Last updated 4 years ago

Overview

This PUT endpoint enables you to retrieve candles and indicators for a particular security. This data includes price ranges, candles, and various other non-market data. It can de used to draw regular charts with various technical indicators.

There are four required parameters that must be provided in the request:

  1. Et-App-Key (header). This is the unique key of your app that identifies your app when communicating with our service. Contact your administrator to get this key.

  2. API version (path). Unless necessary, leave it at "1.0".

  3. model (body). This is a JSON dictionary that contains information about the enquired security.

Enquired Security Syntax

Here's an example of the request body with the information about the enquired security.

{
"Security": {
  "Symbol": "VMSFT",
  "Exchange": "VIRTEX",
  "Currency": "USD"
},
"SecurityHistorySettings": {
    "StartDate":1569902400,
    "EndDate":1570544852,
    "CandlesCount":-1, //set to -1 if candles are unnecessary
    "Period":"5m",
    "Interval":-5,
    "IncludeNonMarketData":false},
"IndicatorsHistorySettings": [{
    "Signature":"MACD|4h|false|12|26|9",
    "StartDate":1542776400,
    "EndDate":1550764844,
    "Period" : "4h",
    "Offset":5
}]
}

where:

Parameter

Description

Securities

This is an array with the enquired securities.

Symbol

This is the ticker symbol of the security under which it is listed on the exchange.

Exchange (optional)

This is the exchange on which the enquired security is listed.

Currency (optional)

This is the currency in which the enquired security is denominated. Possible values: "USD".

Id

StartDate

EndDate

CandlesCount

This is the number of reference points for the chart. For example, if this parameter is set to 5, that chart will be drawn using five values.

Period

This is the preferred time frame for the chart. Possible values:

  • "1m";

  • "2m";

  • "3m";

  • "5m";

  • "10m";

  • "15m";

  • "30m";

  • "1h";

  • "2h";

  • "4h";

  • "1D";

  • "1W";

  • "1M";

  • "3M";

  • "6M";

  • "1Y".

Interval

This is the required time period for the specified time period. Possible values:

  1. Candles = 0,

  2. All = -1,

  3. YearToDate = -2,

  4. Custom = -3,

  5. Day1 = -4,

  6. Week1 = -5,

  7. Month1 = -6,

  8. Month3 = -7,

  9. Month6 = -8,

  10. Year1 = -9,

  11. Year3 = -10,

  12. CustomCandles = -11,

  13. Day3 = -12,

  14. Today = -13

Offset

This is the number of data points by which the technical indicator will be offset.

IndicatorsHistorySettings

This is a string that contains information about the required technical indicator.

All parameters must be provided in the body JSON; otherwise the chart data will not be retrieved.

Here's the final template for this API request:

PUT apiURL/v1.0/history/symbols

Sample CURL

curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer Token' --header 'Et-App-Key: yourKey' -d '{"Security": {"Symbol":"AAPL",
 "Exchange":"XNAS",
 "Currency":"USD"},
 "SecurityHistorySettings":
 {"StartDate":1542776400,
 "EndDate":1550764844,
 "CandlesCount":-1,
 "Period":"4h",
 "Interval":-7,
 "IncludeNonMarketData":false},
 "IndicatorsHistorySettings":[
 {"Signature":"MACD|4h|false|12|26|9",
 "Interval":-7,
 "StartDate":1542776400,
 "EndDate":1550764844,
 "CandlesCount":-1,
 "Offset":0,
 }]
 }' 'https://pub-api-et-demo-prod.etnasoft.us/api/v1.0/history/symbols'

Response

In response to this API request, you'll receive the chart data for the specified security. Some of the response data was omitted so as to preserve space.

{
    "SecurityHistory": [
        [
            {
                "ValuationLevels": [],
                "IsMarket": true,
                "Volume": 12111739,
                "OpenInterest": 0,
                "Time": 1542801600,
                "DateTime": "2018-11-21T12:00:00Z",
                "Open": 179.73,
                "High": 180.27,
                "Low": 177.07,
                "Close": 178.32
            },
            {
                "ValuationLevels": [],
                "IsMarket": true,
                "Volume": 10083292,
                "OpenInterest": 0,
                "Time": 1542816000,
                "DateTime": "2018-11-21T16:00:00Z",
                "Open": 178.32,
                "High": 179.26,
                "Low": 177.15,
                "Close": 177.8828
            },
            {
                "ValuationLevels": [],
                "IsMarket": true,
                "Volume": 4768150,
                "OpenInterest": 0,
                "Time": 1542830400,
                "DateTime": "2018-11-21T20:00:00Z",
                "Open": 177.89,
                "High": 178.05,
                "Low": 176.55,
                "Close": 176.76
            },
        ],
    "IndicatorsHistory": [
        [
            {
                "Date": 1550692800,
                "Values": [
                    0.812609297591649,
                    0.840680863069201,
                    -0.0280715654775516
                ]
            },
            {
                "Date": 1550678400,
                "Values": [
                    0.800153317412054,
                    0.847698754438589,
                    -0.0475454370265348
                ]
            },
            {
                "Date": 1550664000,
                "Values": [
                    0.756325454456856,
                    0.859585113695222,
                    -0.103259659238366
                ]
            },
            {
                "Date": 1550606400,
                "Values": [
                    0.641529520947387,
                    0.885400028504814,
                    -0.243870507557427
                ]
            },
            {
                "Date": 1550592000,
                "Values": [
                    0.666913190963356,
                    0.94636765539417,
                    -0.279454464430814
                ]
            },
            {
                "Date": 1550577600,
                "Values": [
                    0.641909610642443,
                    1.01623127150187,
                    -0.37432166085943
                ]
            },
            {
                "Date": 1550260800,
                "Values": [
                    0.73083362833259,
                    1.10981168671673,
                    -0.378978058384141
                ]
            },
            {
                "Date": 1550246400,
                "Values": [
                    0.808248158135854,
                    1.20455620131277,
                    -0.396308043176913
                ]
            },
            {
                "Date": 1550232000,
                "Values": [
                    0.891228184784637,
                    1.30363321210699,
                    -0.412405027322357
                ]
            },
            {
                "Date": 1550174400,
                "Values": [
                    0.982141190655824,
                    1.40673446893758,
                    -0.424593278281759
                ]
            },
            {
                "Date": 1542801600,
                "Values": [
                    -6.1285915874555,
                    -5.30108537072075,
                    -0.827506216734757
                ]
            }
        ]
    ]
}

where:

Parameter

Description

IsMarket

This field indicates if the candle is positioned during the regular trading hours. If so, the value will be set to true; if not, the value will be set to false.

Volume

This is the trading volume for the specified period.

OpenInterest

This is the total number of outstanding derivative contracts that have not been settled yet (only applicable for derivatives).

Time

This is the date and time (in ticks) at which this particular candle was registered.

DateTime

This is the date and time (in UTC time) at which this particular candle was registered.

Open

This is the opening price of the security.

Close

This is the closing price of the security.

High

This is the highest price point for the security during the specified time period.

Low

This is the lowest price point for the security during the specified time period.

Common Mistakes

Here are some of the common mistakes that developers make when attempting to retrieve trading data for a particular security.

Failing to Specify the Et-App-Key Parameter

If you specify the wrong Et-App-Key parameter or fail to include it in the header altogether, you'll get the following error:

{
    "error": "Application key is not defined or does not exist"
}

Incorrectly Specifying the Request Body

Another common mistake when attempting to retrieve the chart data for a particular security is incorrectly structuring the request body. It's critical that you follow the template provided above and specify all of the required parameters. Otherwise you'll receive the 500 status code and the following error message:

{
    "message": "An error occurred while processing your request",
    "error": "Unexpected server error"
}

The following article covers the syntax for this API request in detail.

Authorization (header). This is the authorization token from the very first .

This is the internal ID of the security in Autoshares Trader. You can retrieve this ID with .

This is the beginning of the period for which the data will be retrieved. The value must be provided in .

This is the end of the period for which the data will be retrieved. The value must be provided in .

token request
this API endpoint
UNIX Time Stamps
UNIX Time Stamps