Client library for Tradematic Cloud API
npm install --save @datafire/tradematic
let tradematic = require('@datafire/tradematic').create({
Secured: ""
});
.then(data => {
console.log(data);
});
Tradematic Cloud is a trading infrastructure for building investment services.
It’s a trading engine + API + ready-made adapters to stock and forex brokers, crypto exchanges, and market data providers.
You can use it as a cloud API, or you can deploy it on your servers.
Sign up at tradematic.cloud. After signing up, you will receive your API key.
Add the 'X-API-KEY' header with your API key to each request.
Examples are available at tradematic.cloud.
Swagger (.yaml) file can be found here.
Get autofollow strategies list
tradematic.autofollow.strategies.get(null, context)
This action has no parameters
- output
array
- items Strategy
Create new autofollow strategy
tradematic.autofollow.strategies.post({
"body": {}
}, context)
- input
object
- body required
object
- strategy NewStrategy
- body required
- output
object
- strategyid
integer
- strategyid
Get autofollow strategy by ID
tradematic.autofollow.strategies.strategyid.get({
"strategyid": 0
}, context)
- input
object
- strategyid required
integer
- strategyid required
- output Strategy
Update autofollow strategy
tradematic.autofollow.strategies.strategyid.put({
"strategyid": 0,
"body": {}
}, context)
- input
object
- strategyid required
integer
- body required
object
- strategy UpdatedStrategy
- strategyid required
- output
object
- result
string
- result
Update rules for strategy that was created with strategy builder
tradematic.autofollow.strategies.strategyid.content.put({
"strategyid": 0,
"body": {}
}, context)
- input
object
- strategyid required
integer
- body required
object
- strategy UpdatedStrategyContent
- strategyid required
- output
object
- strategyid
string
- strategyid
Get positions for strategy
tradematic.autofollow.strategies.strategyid.positions.get({
"strategyid": 0
}, context)
- input
object
- strategyid required
integer
- strategyid required
- output
array
- items StrategyPosition
Get trading signals for strategy
tradematic.autofollow.strategies.strategyid.signals.get({
"strategyid": 0,
"count": 0
}, context)
- input
object
- strategyid required
integer
- count required
integer
- strategyid required
- output
array
- items Signal
Send a new signal for autofollow strategy
tradematic.autofollow.strategies.strategyid.signals.post({
"strategyid": 0,
"body": {}
}, context)
- input
object
- strategyid required
integer
- body required
object
- signal NewSignal
- strategyid required
- output
object
- signalid
string
- signalid
Get strategy builder rules list
tradematic.builder.rules.get(null, context)
This action has no parameters
- output
array
- items Rule
Get strategy builder rules by ID
tradematic.builder.rules.ruleid.get({
"ruleid": 0
}, context)
- input
object
- ruleid required
integer
- ruleid required
- output
array
- items Rule
Get API keys
tradematic.client.apikeys.get(null, context)
This action has no parameters
- output
array
- items APIKey
Create new API key
tradematic.client.apikeys.post(null, context)
This action has no parameters
- output
object
- key
string
- keyid
integer
- key
Delete API key
tradematic.client.apikeys.keyid.delete({
"keyid": 0
}, context)
- input
object
- keyid required
integer
- keyid required
- output
object
- keyid
integer
- keyid
Get users list
tradematic.client.users.get(null, context)
This action has no parameters
- output
array
- items User
Logs user into the system
tradematic.client.users.login.post(null, context)
This action has no parameters
- output
object
- name
string
- userid
integer
- name
Register a new user
tradematic.client.users.register.post({
"body": {}
}, context)
- input
object
- body required
object
- user NewUser
- body required
- output
object
- userid
integer
- userid
Get user by ID
tradematic.client.users.userid.get({
"userid": 0
}, context)
- input
object
- userid required
integer
- userid required
- output User
Get trading accounts list
tradematic.cloud.accounts.get(null, context)
This action has no parameters
- output
array
- items Account
Get trading account by ID
tradematic.cloud.accounts.accountid.get({
"accountid": 0
}, context)
- input
object
- accountid required
integer
- accountid required
- output Account
Close all positions by account
tradematic.cloud.accounts.accountid.closeall.post({
"accountid": 0
}, context)
- input
object
- accountid required
integer
- accountid required
- output
object
- commandid
integer
- commandid
Get orders list by account
tradematic.cloud.accounts.accountid.orders.get({
"accountid": 0
}, context)
- input
object
- accountid required
integer
- accountid required
- output
array
- items Order
Place a new order
tradematic.cloud.accounts.accountid.orders.post({
"accountid": 0,
"body": {}
}, context)
- input
object
- accountid required
integer
- body required
object
- order NewOrder
- accountid required
- output
object
- commandid
integer
- commandid
Cancel an order by ID
tradematic.cloud.accounts.accountid.orders.orderid.delete({
"accountid": 0,
"orderid": 0
}, context)
- input
object
- accountid required
integer
- orderid required
integer
- accountid required
- output
object
- commandid
integer
- commandid
Get account equity and cash snapshots
tradematic.cloud.accounts.accountid.snapshots.get({
"accountid": 0
}, context)
- input
object
- accountid required
integer
- accountid required
- output
array
- items Snapshot
Syhchronize an account with account active strategies
tradematic.cloud.accounts.accountid.sync.post({
"accountid": 0
}, context)
- input
object
- accountid required
integer
- accountid required
- output
object
- commandid
integer
- commandid
Get trades list by account
tradematic.cloud.accounts.accountid.trades.get({
"accountid": 0
}, context)
- input
object
- accountid required
integer
- accountid required
- output
array
- items Trade
Get commands list
tradematic.cloud.commands.get(null, context)
This action has no parameters
- output
array
- items Command
Get command by ID
tradematic.cloud.commands.commandid.get({
"commandid": 0
}, context)
- input
object
- commandid required
integer
- commandid required
- output Command
Get connections list
tradematic.cloud.connections.get(null, context)
This action has no parameters
- output
array
- items Connection
Create a new connection
tradematic.cloud.connections.post({
"body": {}
}, context)
- input
object
- body required
object
- connection UpdatedConnection
- body required
- output
object
- connectionid
integer
- connectionid
Delete connection by ID
tradematic.cloud.connections.connectionid.delete({
"connectionid": 0
}, context)
- input
object
- connectionid required
integer
- connectionid required
- output
object
- connectionid
integer
- connectionid
Get connection by ID
tradematic.cloud.connections.connectionid.get({
"connectionid": 0
}, context)
- input
object
- connectionid required
integer
- connectionid required
- output Connection
Update existing connection
tradematic.cloud.connections.connectionid.put({
"connectionid": 0,
"body": {}
}, context)
- input
object
- connectionid required
integer
- body required
object
- connection UpdatedConnection
- connectionid required
- output
object
- connectionid
integer
- connectionid
Get available connectors list
tradematic.cloud.connectors.get(null, context)
This action has no parameters
- output
array
- items Connector
Get connector by ID
tradematic.cloud.connectors.connectorid.get({
"connectorid": 0
}, context)
- input
object
- connectorid required
integer
- connectorid required
- output Connector
Get sessions list
tradematic.cloud.sessions.get(null, context)
This action has no parameters
- output
array
- items Session
Get session by ID
tradematic.cloud.sessions.sessionid.get({
"sessionid": 0
}, context)
- input
object
- sessionid required
integer
- sessionid required
- output Session
Get list of active (executing) strategies
tradematic.cloud.strategies.get(null, context)
This action has no parameters
- output
array
- items CloudStrategy
Start a strategy execution for account
tradematic.cloud.strategies.start.post({
"body": {}
}, context)
- input
object
- body required
object
- data StartStrategyData
- body required
- output
object
- commandid
integer
- commandid
Get active (executing) strategy by ID
tradematic.cloud.strategies.strategyid.get({
"strategyid": 0
}, context)
- input
object
- strategyid required
integer
- strategyid required
- output
array
- items CloudStrategy
Stop a strategy execution by ID
tradematic.cloud.strategies.strategyid.stop.post({
"strategyid": 0
}, context)
- input
object
- strategyid required
integer
- strategyid required
- output
object
- commandid
integer
- commandid
Get markets list
tradematic.marketdata.markets.get(null, context)
This action has no parameters
- output
array
- items Market
Get market by ID
tradematic.marketdata.markets.marketid.get({
"marketid": 0
}, context)
- input
object
- marketid required
integer
- marketid required
- output Market
Get symbols list
tradematic.marketdata.symbols.get({
"marketid": 0,
"filter": 0
}, context)
- input
object
- marketid required
integer
- filter required
integer
- marketid required
- output
array
- items Symbol
Get symbol by ID
tradematic.marketdata.symbols.symbolid.get({
"symbolid": 0
}, context)
- input
object
- symbolid required
integer
- symbolid required
- output Symbol
Get historical data for instrument
tradematic.marketdata.symbols.symbolid.histdata.get({
"symbolid": 0,
"tf": 0,
"from": 0,
"to": 0
}, context)
- input
object
- symbolid required
integer
- tf required
integer
- from required
integer
- to required
integer
- symbolid required
- output
object
- adjusted
boolean
- queryCount
integer
- results
array
- items Result
- resultsCount
integer
- status
string
- ticker
string
- adjusted
Get news list
tradematic.news.news.get(null, context)
This action has no parameters
- output
array
- items News
Get news by ID
tradematic.news.news.newsid.get({
"newsid": 0
}, context)
- input
object
- newsid required
integer
- newsid required
- output News
Ping
tradematic.ping.get(null, context)
This action has no parameters
- output
object
Get tasks list
tradematic.taskmanager.tasks.get(null, context)
This action has no parameters
- output
array
- items Task
Create a new task
tradematic.taskmanager.tasks.post({
"body": {}
}, context)
- input
object
- body required
object
- task NewTask
- body required
- output
object
- taskid
string
- taskid
Get task by ID
tradematic.taskmanager.tasks.taskid.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output Task
Get backtest data for equity chart, grouped by months
tradematic.taskmanager.tasks.taskid.bymonths.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items ByMonths
Get backtest data for equity chart, grouped by quarters
tradematic.taskmanager.tasks.taskid.byquarters.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items ByQuarters
Get backtest data for equity chart, grouped by years
tradematic.taskmanager.tasks.taskid.byyears.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items ByYears
Get backtest symbol contribution data
tradematic.taskmanager.tasks.taskid.contribution.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items Contribution
Get data for drawdown chart
tradematic.taskmanager.tasks.taskid.drawdown.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items DrawdownItem
Get data for equity chart
tradematic.taskmanager.tasks.taskid.equity.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items EquityItem
Get data for equity chart (%)
tradematic.taskmanager.tasks.taskid.equitypct.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items EquityPctItem
Get spared data for equity chart (%)
tradematic.taskmanager.tasks.taskid.equitypctsm.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items EquityPctSmItem
Get task result folder name
tradematic.taskmanager.tasks.taskid.folder.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
object
- folder
string
- folder
Get backtest statistics
tradematic.taskmanager.tasks.taskid.performance.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
Get task result
tradematic.taskmanager.tasks.taskid.result.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
object
- bymonths_csv
string
- bymonths_png
string
- byquarters_csv
string
- byquarters_png
string
- byyears_csv
string
- byyears_png
string
- contribution_csv
string
- contribution_png
string
- drawdown_csv
string
- drawdown_png
string
- equity_csv
string
- equity_png
string
- equitypct_csv
string
- equitypct_png
string
- equitypctnofill_csv
string
- equitypctnofill_png
string
- equitypctsm
string
- equitypctsm_csv
string
- equitypctsm_png
string
- performance_csv
string
- performance_png
string
- trades_csv
string
- trades_png
string
- bymonths_csv
Get task result (version 2)
tradematic.taskmanager.tasks.taskid.result2.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
object
- apr
string
- curMonthProfit
string
- curYearProfit
string
- drawdown
string
- halfYearProfit
string
- monthProfit
string
- prevMonthProfit
string
- totalProfit
string
- weekProfit
string
- yearProfit
string
- apr
Get task status
tradematic.taskmanager.tasks.taskid.status.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
object
- status
string
- status
Get backtest trades list
tradematic.taskmanager.tasks.taskid.trades.get({
"taskid": 0
}, context)
- input
object
- taskid required
integer
- taskid required
- output
array
- items BacktestTrade
Get current server time
tradematic.time.get(null, context)
This action has no parameters
- output
object
- servertime
integer
- servertime
- APIKey
object
- key
string
- keyid
string
- permissions
string
- key
- Account
object
- BacktestTrade
object
- barsheld
string
- changepct
string
- commission
string
- entrydatetime
string
- entryprice
string
- entrysignal
string
- exitdatetime
string
- exitprice
string
- exitsignal
string
- mae
string
- mfe
string
- pandl
string
- position
string
- shares
string
- size
string
- symbol
string
- barsheld
- ByMonths
object
- equitypct
string
- period
string
- equitypct
- ByQuarters
object
- equitypct
string
- period
string
- equitypct
- ByYears
object
- equitypct
string
- period
string
- equitypct
- CloudStrategy
object
- account
string
- computer
string
- hwid
string
- message
string
- status
string
- strategy
string
- strategyid
string
- strategystatusname
string
- account
- Command
object
- account
string
- accountid
string
- commanddate
string
- commandid
string
- commandstatusname
string
- commandtypename
string
- computer
string
- hwid
string
- message
string
- parameters Parameters
- status
string
- timestamp
string
- type
string
- account
- Connection
object
- active
string
- connectionid
string
- connectionstring
string
- connectorcode
string
- connectorid
string
- connectorname
string
- connectortypename
string
- creationdate
string
- host
string
- login
string
- password
string
- port
string
- sessionid
string
- updatedate
string
- active
- Connector
object
- code
string
- connectorid
string
- connectortypename
string
- name
string
- typeid
string
- code
- Contribution
object
- pandl
string
- share
string
- symbol
string
- pandl
- DrawdownItem
object
- drawdownpct
string
- timestamp
string
- drawdownpct
- EquityItem
object
- cash
string
- equity
string
- timestamp
string
- cash
- EquityPctItem
object
- buyandhold
string
- equity
string
- timestamp
string
- buyandhold
- EquityPctSmItem
object
- buyandhold
string
- equity
string
- timestamp
string
- buyandhold
- Error
object
- message
string
- status
integer
- message
- Longentry
object
- id
string
- name
string
- parameters
array
- items Parameter
- validnot
string
- validor
string
- id
- Longexit
object
- id
string
- name
string
- parameters
array
- items Parameter
- validnot
string
- validor
string
- id
- Longshort
object
- apr
string
- avgbarsheld
string
- avgloss
string
- avglossbarsheld
string
- avglosspct
string
- avgprofit
string
- avgprofitavgloss
string
- avgprofitbarsheld
string
- avgprofitpct
string
- endcapital
string
- exposure
string
- grossloss
string
- grossprofit
string
- losingtrades
string
- losingtradespct
string
- mar
string
- margininterest
string
- maxconsecloss
string
- maxconsecwin
string
- maxdrawdown
string
- maxdrawdowndate
string
- maxdrawdownlength
string
- maxdrawdownpct
string
- maxdrawdownpctdate
string
- mpr
string
- netprofit
string
- netprofitpct
string
- profitabletrades
string
- profitabletradespct
string
- profitfactor
string
- profitriskratio
string
- rar
string
- recoveryfactor
string
- sharperatio
string
- sortinoratio
string
- startcapital
string
- totalcommission
string
- totaltrades
string
- totalvolume
string
- turnover
string
- apr
- Market
object
- code
string
- countryid
string
- marketid
string
- name
string
- code
- NewOrder
object
- buy
string
- price
string
- shares
string
- symbol
string
- type
string
- buy
- NewSignal
object
- position
string
- price
string
- shares
string
- size
string
- symbol
string
- timestamp
string
- type
string
- position
- NewStrategy
object
- apr
string
- author
string
- content
string
- description
string
- drawdown
string
- guid
string
- limitorder
string
- marketname
string
- multiposition
string
- name
string
- positionsize
string
- strategytypeid
string
- symbols
string
- timeframe
string
- apr
- NewTask
object
- isbenchmark
string
- strategyid
string
- tasktypeid
string
- userid2
string
- isbenchmark
- NewUser
object
- name
string
- password
string
- username
string
- name
- News
object
- body
string
- newsid
string
- source
string
- timestamp
string
- title
string
- body
- Order
object
- account
string
- buy
string
- message
string
- number
string
- orderid
string
- price
string
- shares
string
- status
string
- statusname
string
- symbol
string
- timestamp
string
- account
- Parameter
object
- default
string
- name
string
- start
string
- step
string
- stop
string
- type
string
- default
- Parameters
object
- Positions
object
- Result
object
- c
number
- h
number
- l
number
- n
integer
- o
number
- t
integer
- v
integer
- c
- Rule
object
- category
string
- description
string
- guid
string
- name
string
- parameters
array
- items Parameter
- ruletype
string
- validnot
string
- validor
string
- category
- Session
object
- computer
string
- hwid
string
- login
string
- mode
string
- sessionid
string
- sessionmodename
string
- sessionstatusname
string
- status
string
- timestamp
string
- type
string
- userid
string
- computer
- Signal
object
- position
string
- price
string
- shares
string
- signalid
string
- size
string
- symbol
string
- timestamp
string
- type
string
- position
- Snapshot
object
- cash
string
- daynum
string
- snapshotid
string
- timestamp
string
- value
string
- cash
- StartStrategyData
object
- accountid
string
- strategyid
string
- accountid
- Strategy
object
- apr
string
- author
string
- brokername
string
- code
string
- datascale
string
- description
string
- drawdown
string
- folder
string
- guid
string
- image
string
- limitorder
string
- marketname
string
- multiposition
string
- name
string
- owner
string
- permissions
string
- positionsize
string
- risklevelcode
string
- risklevelid
string
- risklevelname
string
- rules Rules
- strategyid
string
- strategytypeid
string
- symbols
array
- items Symbol
- taskfolder
string
- taskid
string
- taskresult Taskresult
- timeframe
string
- updatedate
string
- url
string
- apr
- StrategyPosition
object
- date
string
- price
string
- size
string
- symbol
string
- date
- Symbol
string
- Task
object
- isbenchmark
string
- name
string
- status
string
- statusupdatedate
string
- strategyid
string
- taskid
string
- usestaticdata
string
- isbenchmark
- Taskresult
object
- apr
string
- curMonthProfit
string
- curYearProfit
string
- drawdown
string
- halfYearProfit
string
- monthProfit
string
- prevMonthProfit
string
- totalProfit
string
- weekProfit
string
- yearProfit
string
- apr
- Trade
object
- account
string
- buy
string
- number
string
- price
string
- shares
string
- symbol
string
- timestamp
string
- tradeid
string
- account
- UpdatedConnection
object
- active
string
- connectorid
string
- host
string
- login
string
- password
string
- port
string
- active
- UpdatedStrategy
object
- author
string
- description
string
- limitorder
string
- marketname
string
- multiposition
string
- name
string
- symbols
string
- author
- UpdatedStrategyContent
object
- rules Rules
- User
object
- comments
string
- createdby
string
- name
string
- regdate
string
- userid
string
- username
string
- comments