@datafire/tradematic v3.0.0
@datafire/tradematic
Client library for Tradematic Cloud API
Installation and Usage
npm install --save @datafire/tradematic
let tradematic = require('@datafire/tradematic').create({
Secured: ""
});
.then(data => {
console.log(data);
});
Description
Overview
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.
How to use Tradematic Cloud API
Sign up at tradematic.cloud. After signing up, you will receive your API key.
Authorization
Add the 'X-API-KEY' header with your API key to each request.
Examples of writing code with Tradematic Cloud API
Examples are available at tradematic.cloud.
Swagger (.yaml) File
Swagger (.yaml) file can be found here.
Actions
autofollow.strategies.get
Get autofollow strategies list
tradematic.autofollow.strategies.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Strategy
autofollow.strategies.post
Create new autofollow strategy
tradematic.autofollow.strategies.post({
"body": {}
}, context)
Input
- input
object
- body required
object
- strategy NewStrategy
- body required
Output
- output
object
- strategyid
integer
- strategyid
autofollow.strategies.strategyid.get
Get autofollow strategy by ID
tradematic.autofollow.strategies.strategyid.get({
"strategyid": 0
}, context)
Input
- input
object
- strategyid required
integer
- strategyid required
Output
- output Strategy
autofollow.strategies.strategyid.put
Update autofollow strategy
tradematic.autofollow.strategies.strategyid.put({
"strategyid": 0,
"body": {}
}, context)
Input
- input
object
- strategyid required
integer
- body required
object
- strategy UpdatedStrategy
- strategyid required
Output
- output
object
- result
string
- result
autofollow.strategies.strategyid.content.put
Update rules for strategy that was created with strategy builder
tradematic.autofollow.strategies.strategyid.content.put({
"strategyid": 0,
"body": {}
}, context)
Input
- input
object
- strategyid required
integer
- body required
object
- strategy UpdatedStrategyContent
- strategyid required
Output
- output
object
- strategyid
string
- strategyid
autofollow.strategies.strategyid.positions.get
Get positions for strategy
tradematic.autofollow.strategies.strategyid.positions.get({
"strategyid": 0
}, context)
Input
- input
object
- strategyid required
integer
- strategyid required
Output
- output
array
- items StrategyPosition
autofollow.strategies.strategyid.signals.get
Get trading signals for strategy
tradematic.autofollow.strategies.strategyid.signals.get({
"strategyid": 0,
"count": 0
}, context)
Input
- input
object
- strategyid required
integer
- count required
integer
- strategyid required
Output
- output
array
- items Signal
autofollow.strategies.strategyid.signals.post
Send a new signal for autofollow strategy
tradematic.autofollow.strategies.strategyid.signals.post({
"strategyid": 0,
"body": {}
}, context)
Input
- input
object
- strategyid required
integer
- body required
object
- signal NewSignal
- strategyid required
Output
- output
object
- signalid
string
- signalid
builder.rules.get
Get strategy builder rules list
tradematic.builder.rules.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Rule
builder.rules.ruleid.get
Get strategy builder rules by ID
tradematic.builder.rules.ruleid.get({
"ruleid": 0
}, context)
Input
- input
object
- ruleid required
integer
- ruleid required
Output
- output
array
- items Rule
client.apikeys.get
Get API keys
tradematic.client.apikeys.get(null, context)
Input
This action has no parameters
Output
- output
array
- items APIKey
client.apikeys.post
Create new API key
tradematic.client.apikeys.post(null, context)
Input
This action has no parameters
Output
- output
object
- key
string
- keyid
integer
- key
client.apikeys.keyid.delete
Delete API key
tradematic.client.apikeys.keyid.delete({
"keyid": 0
}, context)
Input
- input
object
- keyid required
integer
- keyid required
Output
- output
object
- keyid
integer
- keyid
client.users.get
Get users list
tradematic.client.users.get(null, context)
Input
This action has no parameters
Output
- output
array
- items User
client.users.login.post
Logs user into the system
tradematic.client.users.login.post(null, context)
Input
This action has no parameters
Output
- output
object
- name
string
- userid
integer
- name
client.users.register.post
Register a new user
tradematic.client.users.register.post({
"body": {}
}, context)
Input
- input
object
- body required
object
- user NewUser
- body required
Output
- output
object
- userid
integer
- userid
client.users.userid.get
Get user by ID
tradematic.client.users.userid.get({
"userid": 0
}, context)
Input
- input
object
- userid required
integer
- userid required
Output
- output User
cloud.accounts.get
Get trading accounts list
tradematic.cloud.accounts.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Account
cloud.accounts.accountid.get
Get trading account by ID
tradematic.cloud.accounts.accountid.get({
"accountid": 0
}, context)
Input
- input
object
- accountid required
integer
- accountid required
Output
- output Account
cloud.accounts.accountid.closeall.post
Close all positions by account
tradematic.cloud.accounts.accountid.closeall.post({
"accountid": 0
}, context)
Input
- input
object
- accountid required
integer
- accountid required
Output
- output
object
- commandid
integer
- commandid
cloud.accounts.accountid.orders.get
Get orders list by account
tradematic.cloud.accounts.accountid.orders.get({
"accountid": 0
}, context)
Input
- input
object
- accountid required
integer
- accountid required
Output
- output
array
- items Order
cloud.accounts.accountid.orders.post
Place a new order
tradematic.cloud.accounts.accountid.orders.post({
"accountid": 0,
"body": {}
}, context)
Input
- input
object
- accountid required
integer
- body required
object
- order NewOrder
- accountid required
Output
- output
object
- commandid
integer
- commandid
cloud.accounts.accountid.orders.orderid.delete
Cancel an order by ID
tradematic.cloud.accounts.accountid.orders.orderid.delete({
"accountid": 0,
"orderid": 0
}, context)
Input
- input
object
- accountid required
integer
- orderid required
integer
- accountid required
Output
- output
object
- commandid
integer
- commandid
cloud.accounts.accountid.snapshots.get
Get account equity and cash snapshots
tradematic.cloud.accounts.accountid.snapshots.get({
"accountid": 0
}, context)
Input
- input
object
- accountid required
integer
- accountid required
Output
- output
array
- items Snapshot
cloud.accounts.accountid.sync.post
Syhchronize an account with account active strategies
tradematic.cloud.accounts.accountid.sync.post({
"accountid": 0
}, context)
Input
- input
object
- accountid required
integer
- accountid required
Output
- output
object
- commandid
integer
- commandid
cloud.accounts.accountid.trades.get
Get trades list by account
tradematic.cloud.accounts.accountid.trades.get({
"accountid": 0
}, context)
Input
- input
object
- accountid required
integer
- accountid required
Output
- output
array
- items Trade
cloud.commands.get
Get commands list
tradematic.cloud.commands.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Command
cloud.commands.commandid.get
Get command by ID
tradematic.cloud.commands.commandid.get({
"commandid": 0
}, context)
Input
- input
object
- commandid required
integer
- commandid required
Output
- output Command
cloud.connections.get
Get connections list
tradematic.cloud.connections.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Connection
cloud.connections.post
Create a new connection
tradematic.cloud.connections.post({
"body": {}
}, context)
Input
- input
object
- body required
object
- connection UpdatedConnection
- body required
Output
- output
object
- connectionid
integer
- connectionid
cloud.connections.connectionid.delete
Delete connection by ID
tradematic.cloud.connections.connectionid.delete({
"connectionid": 0
}, context)
Input
- input
object
- connectionid required
integer
- connectionid required
Output
- output
object
- connectionid
integer
- connectionid
cloud.connections.connectionid.get
Get connection by ID
tradematic.cloud.connections.connectionid.get({
"connectionid": 0
}, context)
Input
- input
object
- connectionid required
integer
- connectionid required
Output
- output Connection
cloud.connections.connectionid.put
Update existing connection
tradematic.cloud.connections.connectionid.put({
"connectionid": 0,
"body": {}
}, context)
Input
- input
object
- connectionid required
integer
- body required
object
- connection UpdatedConnection
- connectionid required
Output
- output
object
- connectionid
integer
- connectionid
cloud.connectors.get
Get available connectors list
tradematic.cloud.connectors.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Connector
cloud.connectors.connectorid.get
Get connector by ID
tradematic.cloud.connectors.connectorid.get({
"connectorid": 0
}, context)
Input
- input
object
- connectorid required
integer
- connectorid required
Output
- output Connector
cloud.sessions.get
Get sessions list
tradematic.cloud.sessions.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Session
cloud.sessions.sessionid.get
Get session by ID
tradematic.cloud.sessions.sessionid.get({
"sessionid": 0
}, context)
Input
- input
object
- sessionid required
integer
- sessionid required
Output
- output Session
cloud.strategies.get
Get list of active (executing) strategies
tradematic.cloud.strategies.get(null, context)
Input
This action has no parameters
Output
- output
array
- items CloudStrategy
cloud.strategies.start.post
Start a strategy execution for account
tradematic.cloud.strategies.start.post({
"body": {}
}, context)
Input
- input
object
- body required
object
- data StartStrategyData
- body required
Output
- output
object
- commandid
integer
- commandid
cloud.strategies.strategyid.get
Get active (executing) strategy by ID
tradematic.cloud.strategies.strategyid.get({
"strategyid": 0
}, context)
Input
- input
object
- strategyid required
integer
- strategyid required
Output
- output
array
- items CloudStrategy
cloud.strategies.strategyid.stop.post
Stop a strategy execution by ID
tradematic.cloud.strategies.strategyid.stop.post({
"strategyid": 0
}, context)
Input
- input
object
- strategyid required
integer
- strategyid required
Output
- output
object
- commandid
integer
- commandid
marketdata.markets.get
Get markets list
tradematic.marketdata.markets.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Market
marketdata.markets.marketid.get
Get market by ID
tradematic.marketdata.markets.marketid.get({
"marketid": 0
}, context)
Input
- input
object
- marketid required
integer
- marketid required
Output
- output Market
marketdata.symbols.get
Get symbols list
tradematic.marketdata.symbols.get({
"marketid": 0,
"filter": 0
}, context)
Input
- input
object
- marketid required
integer
- filter required
integer
- marketid required
Output
- output
array
- items Symbol
marketdata.symbols.symbolid.get
Get symbol by ID
tradematic.marketdata.symbols.symbolid.get({
"symbolid": 0
}, context)
Input
- input
object
- symbolid required
integer
- symbolid required
Output
- output Symbol
marketdata.symbols.symbolid.histdata.get
Get historical data for instrument
tradematic.marketdata.symbols.symbolid.histdata.get({
"symbolid": 0,
"tf": 0,
"from": 0,
"to": 0
}, context)
Input
- input
object
- symbolid required
integer
- tf required
integer
- from required
integer
- to required
integer
- symbolid required
Output
- output
object
- adjusted
boolean
- queryCount
integer
- results
array
- items Result
- resultsCount
integer
- status
string
- ticker
string
- adjusted
news.news.get
Get news list
tradematic.news.news.get(null, context)
Input
This action has no parameters
Output
- output
array
- items News
news.news.newsid.get
Get news by ID
tradematic.news.news.newsid.get({
"newsid": 0
}, context)
Input
- input
object
- newsid required
integer
- newsid required
Output
- output News
ping.get
Ping
tradematic.ping.get(null, context)
Input
This action has no parameters
Output
- output
object
taskmanager.tasks.get
Get tasks list
tradematic.taskmanager.tasks.get(null, context)
Input
This action has no parameters
Output
- output
array
- items Task
taskmanager.tasks.post
Create a new task
tradematic.taskmanager.tasks.post({
"body": {}
}, context)
Input
- input
object
- body required
object
- task NewTask
- body required
Output
- output
object
- taskid
string
- taskid
taskmanager.tasks.taskid.get
Get task by ID
tradematic.taskmanager.tasks.taskid.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output Task
taskmanager.tasks.taskid.bymonths.get
Get backtest data for equity chart, grouped by months
tradematic.taskmanager.tasks.taskid.bymonths.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items ByMonths
taskmanager.tasks.taskid.byquarters.get
Get backtest data for equity chart, grouped by quarters
tradematic.taskmanager.tasks.taskid.byquarters.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items ByQuarters
taskmanager.tasks.taskid.byyears.get
Get backtest data for equity chart, grouped by years
tradematic.taskmanager.tasks.taskid.byyears.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items ByYears
taskmanager.tasks.taskid.contribution.get
Get backtest symbol contribution data
tradematic.taskmanager.tasks.taskid.contribution.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items Contribution
taskmanager.tasks.taskid.drawdown.get
Get data for drawdown chart
tradematic.taskmanager.tasks.taskid.drawdown.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items DrawdownItem
taskmanager.tasks.taskid.equity.get
Get data for equity chart
tradematic.taskmanager.tasks.taskid.equity.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items EquityItem
taskmanager.tasks.taskid.equitypct.get
Get data for equity chart (%)
tradematic.taskmanager.tasks.taskid.equitypct.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items EquityPctItem
taskmanager.tasks.taskid.equitypctsm.get
Get spared data for equity chart (%)
tradematic.taskmanager.tasks.taskid.equitypctsm.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items EquityPctSmItem
taskmanager.tasks.taskid.folder.get
Get task result folder name
tradematic.taskmanager.tasks.taskid.folder.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
object
- folder
string
- folder
taskmanager.tasks.taskid.performance.get
Get backtest statistics
tradematic.taskmanager.tasks.taskid.performance.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
taskmanager.tasks.taskid.result.get
Get task result
tradematic.taskmanager.tasks.taskid.result.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- 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
taskmanager.tasks.taskid.result2.get
Get task result (version 2)
tradematic.taskmanager.tasks.taskid.result2.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
object
- apr
string
- curMonthProfit
string
- curYearProfit
string
- drawdown
string
- halfYearProfit
string
- monthProfit
string
- prevMonthProfit
string
- totalProfit
string
- weekProfit
string
- yearProfit
string
- apr
taskmanager.tasks.taskid.status.get
Get task status
tradematic.taskmanager.tasks.taskid.status.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
object
- status
string
- status
taskmanager.tasks.taskid.trades.get
Get backtest trades list
tradematic.taskmanager.tasks.taskid.trades.get({
"taskid": 0
}, context)
Input
- input
object
- taskid required
integer
- taskid required
Output
- output
array
- items BacktestTrade
time.get
Get current server time
tradematic.time.get(null, context)
Input
This action has no parameters
Output
- output
object
- servertime
integer
- servertime
Definitions
APIKey
- APIKey
object
- key
string
- keyid
string
- permissions
string
- key
Account
- Account
object
BacktestTrade
- 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
- ByMonths
object
- equitypct
string
- period
string
- equitypct
ByQuarters
- ByQuarters
object
- equitypct
string
- period
string
- equitypct
ByYears
- ByYears
object
- equitypct
string
- period
string
- equitypct
CloudStrategy
- CloudStrategy
object
- account
string
- computer
string
- hwid
string
- message
string
- status
string
- strategy
string
- strategyid
string
- strategystatusname
string
- account
Command
- 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
- 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
- Connector
object
- code
string
- connectorid
string
- connectortypename
string
- name
string
- typeid
string
- code
Contribution
- Contribution
object
- pandl
string
- share
string
- symbol
string
- pandl
DrawdownItem
- DrawdownItem
object
- drawdownpct
string
- timestamp
string
- drawdownpct
EquityItem
- EquityItem
object
- cash
string
- equity
string
- timestamp
string
- cash
EquityPctItem
- EquityPctItem
object
- buyandhold
string
- equity
string
- timestamp
string
- buyandhold
EquityPctSmItem
- EquityPctSmItem
object
- buyandhold
string
- equity
string
- timestamp
string
- buyandhold
Error
- Error
object
- message
string
- status
integer
- message
Longentry
- Longentry
object
- id
string
- name
string
- parameters
array
- items Parameter
- validnot
string
- validor
string
- id
Longexit
- Longexit
object
- id
string
- name
string
- parameters
array
- items Parameter
- validnot
string
- validor
string
- id
Longshort
- 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
- Market
object
- code
string
- countryid
string
- marketid
string
- name
string
- code
NewOrder
- NewOrder
object
- buy
string
- price
string
- shares
string
- symbol
string
- type
string
- buy
NewSignal
- NewSignal
object
- position
string
- price
string
- shares
string
- size
string
- symbol
string
- timestamp
string
- type
string
- position
NewStrategy
- 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
- NewTask
object
- isbenchmark
string
- strategyid
string
- tasktypeid
string
- userid2
string
- isbenchmark
NewUser
- NewUser
object
- name
string
- password
string
- username
string
- name
News
- News
object
- body
string
- newsid
string
- source
string
- timestamp
string
- title
string
- body
Order
- 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
- Parameter
object
- default
string
- name
string
- start
string
- step
string
- stop
string
- type
string
- default
Parameters
- Parameters
object
Positions
- Positions
object
Result
- Result
object
- c
number
- h
number
- l
number
- n
integer
- o
number
- t
integer
- v
integer
- c
Rule
- Rule
object
- category
string
- description
string
- guid
string
- name
string
- parameters
array
- items Parameter
- ruletype
string
- validnot
string
- validor
string
- category
Rules
Session
- 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
- Signal
object
- position
string
- price
string
- shares
string
- signalid
string
- size
string
- symbol
string
- timestamp
string
- type
string
- position
Snapshot
- Snapshot
object
- cash
string
- daynum
string
- snapshotid
string
- timestamp
string
- value
string
- cash
StartStrategyData
- StartStrategyData
object
- accountid
string
- strategyid
string
- accountid
Strategy
- 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
- StrategyPosition
object
- date
string
- price
string
- size
string
- symbol
string
- date
Symbol
- Symbol
string
Task
- Task
object
- isbenchmark
string
- name
string
- status
string
- statusupdatedate
string
- strategyid
string
- taskid
string
- usestaticdata
string
- isbenchmark
Taskresult
- Taskresult
object
- apr
string
- curMonthProfit
string
- curYearProfit
string
- drawdown
string
- halfYearProfit
string
- monthProfit
string
- prevMonthProfit
string
- totalProfit
string
- weekProfit
string
- yearProfit
string
- apr
Trade
- Trade
object
- account
string
- buy
string
- number
string
- price
string
- shares
string
- symbol
string
- timestamp
string
- tradeid
string
- account
UpdatedConnection
- UpdatedConnection
object
- active
string
- connectorid
string
- host
string
- login
string
- password
string
- port
string
- active
UpdatedStrategy
- UpdatedStrategy
object
- author
string
- description
string
- limitorder
string
- marketname
string
- multiposition
string
- name
string
- symbols
string
- author
UpdatedStrategyContent
- UpdatedStrategyContent
object
- rules Rules
User
- User
object
- comments
string
- createdby
string
- name
string
- regdate
string
- userid
string
- username
string
- comments
5 years ago