Sections:
Connect to TT Demo server: ttConnect()
options(warn=-1)
require(rClr)
## Loading required package: rClr
## Loading the dynamic library for Microsoft .NET runtime...
## Loaded Common Language Runtime version 4.0.30319.42000
require(FdkRLib)
## Loading required package: FdkRLib
ttConnect("", "", "")
## Loading required package: data.table
## [1] 0
Get symbol and currency data
ttGetSymbolData()
## name precision contractSize contractMultiplier comission
## 1: EURUSD 5 100000 1e+05 0.005
## 2: EURAUD 5 100000 1e+05 0.005
## 3: USDCAD 5 100000 1e+05 0.005
## 4: USDCHF 5 100000 1e+05 0.005
## 5: EURCAD 5 100000 1e+05 0.005
## 6: CADJPY 3 100000 1e+03 0.005
## 7: EURJPY 3 100000 1e+03 0.005
## 8: GBPJPY 3 100000 1e+03 0.005
## 9: USDSEK 5 100000 1e+05 0.005
## 10: USDNOK 5 100000 1e+05 0.005
## 11: AUDUSD 5 100000 1e+05 0.005
## 12: CHFJPY 3 100000 1e+03 0.005
## 13: GBPCHF 5 100000 1e+05 0.005
## 14: NZDUSD 5 100000 1e+05 0.005
## 15: AUDNZD 5 100000 1e+05 0.005
## 16: EURCHF 5 100000 1e+05 0.005
## 17: GBPUSD 5 100000 1e+05 0.005
## 18: USDJPY 3 100000 1e+03 0.005
## 19: AUDJPY 3 100000 1e+03 0.005
## 20: EURGBP 5 100000 1e+05 0.005
## 21: EURNOK 5 100000 1e+05 0.005
## 22: EURSEK 5 100000 1e+05 0.005
## 23: AUDCHF 5 100000 1e+05 0.005
## 24: CADCHF 5 100000 1e+05 0.005
## 25: GBPAUD 5 100000 1e+05 0.005
## 26: GBPCAD 5 100000 1e+05 0.005
## 27: GBPNZD 5 100000 1e+05 0.005
## 28: NZDCAD 5 100000 1e+05 0.005
## 29: NZDCHF 5 100000 1e+05 0.005
## 30: NZDJPY 3 100000 1e+03 0.005
## 31: EURNZD 5 100000 1e+05 0.005
## 32: AUDCAD 5 100000 1e+05 0.005
## 33: USDRUB 4 100000 1e+04 0.005
## 34: SGDJPY 3 100000 1e+03 0.005
## 35: EURDKK 5 100000 1e+05 0.005
## 36: USDTRY 5 100000 1e+05 0.005
## 37: USDHKD 5 100000 1e+05 0.005
## 38: EURTRY 5 100000 1e+05 0.005
## 39: USDSGD 5 100000 1e+05 0.005
## 40: USDPLN 5 100000 1e+05 0.005
## 41: HKDJPY 3 100000 1e+03 0.005
## 42: GBPSGD 5 100000 1e+05 0.005
## 43: NOKJPY 3 100000 1e+03 0.005
## 44: EURPLN 5 100000 1e+05 0.005
## 45: NZDSGD 5 100000 1e+05 0.005
## 46: NOKSEK 5 100000 1e+05 0.005
## 47: EURHKD 5 100000 1e+05 0.005
## 48: USDMXN 5 100000 1e+05 0.005
## 49: USDDKK 5 100000 1e+05 0.005
## 50: USDCNH 4 100000 1e+04 0.005
## 51: #AUS200 1 10 1e+01 0.005
## 52: #FCHI 1 10 1e+01 0.005
## 53: #GDAXI 1 25 1e+01 0.005
## 54: #GDAXIm 1 10 1e+01 0.005
## 55: #UK100 1 10 1e+01 0.005
## 56: #J225 0 1000 1e+00 0.005
## 57: #NDX 1 100 1e+01 0.005
## 58: #SPX 1 250 1e+01 0.005
## 59: #SPXm 1 100 1e+01 0.005
## 60: #WS30 0 10 1e+00 0.005
## 61: XBRUSD 2 1000 1e+02 0.005
## 62: XTIUSD 2 1000 1e+02 0.005
## 63: XNGUSD 3 10000 1e+03 0.005
## 64: #ESX50 1 10 1e+01 0.005
## 65: XAUUSD 2 100 1e+02 0.005
## 66: XAGUSD 3 5000 1e+03 0.005
## 67: #NDXm 1 10 1e+01 0.005
## 68: #WS30m 0 1 1e+00 0.005
## name precision contractSize contractMultiplier comission
## marginCurrency profitCurrency limitsComission minTradeVolume
## 1: EUR USD 0.005 1000.0
## 2: EUR AUD 0.005 1000.0
## 3: USD CAD 0.005 1000.0
## 4: USD CHF 0.005 1000.0
## 5: EUR CAD 0.005 1000.0
## 6: CAD JPY 0.005 1000.0
## 7: EUR JPY 0.005 1000.0
## 8: GBP JPY 0.005 1000.0
## 9: USD SEK 0.005 1000.0
## 10: USD NOK 0.005 1000.0
## 11: AUD USD 0.005 1000.0
## 12: CHF JPY 0.005 1000.0
## 13: GBP CHF 0.005 1000.0
## 14: NZD USD 0.005 1000.0
## 15: AUD NZD 0.005 1000.0
## 16: EUR CHF 0.005 1000.0
## 17: GBP USD 0.005 1000.0
## 18: USD JPY 0.005 1000.0
## 19: AUD JPY 0.005 1000.0
## 20: EUR GBP 0.005 1000.0
## 21: EUR NOK 0.005 1000.0
## 22: EUR SEK 0.005 1000.0
## 23: AUD CHF 0.005 1000.0
## 24: CAD CHF 0.005 1000.0
## 25: GBP AUD 0.005 1000.0
## 26: GBP CAD 0.005 1000.0
## 27: GBP NZD 0.005 1000.0
## 28: NZD CAD 0.005 1000.0
## 29: NZD CHF 0.005 1000.0
## 30: NZD JPY 0.005 1000.0
## 31: EUR NZD 0.005 1000.0
## 32: AUD CAD 0.005 1000.0
## 33: USD RUB 0.005 1000.0
## 34: SGD JPY 0.005 1000.0
## 35: EUR DKK 0.005 1000.0
## 36: USD TRY 0.005 1000.0
## 37: USD HKD 0.005 1000.0
## 38: EUR TRY 0.005 1000.0
## 39: USD SGD 0.005 1000.0
## 40: USD PLN 0.005 1000.0
## 41: HKD JPY 0.005 1000.0
## 42: GBP SGD 0.005 1000.0
## 43: NOK JPY 0.005 1000.0
## 44: EUR PLN 0.005 1000.0
## 45: NZD SGD 0.005 1000.0
## 46: NOK SEK 0.005 1000.0
## 47: EUR HKD 0.005 1000.0
## 48: USD MXN 0.005 1000.0
## 49: USD DKK 0.005 1000.0
## 50: USD CNH 0.005 1000.0
## 51: ASX AUD 0.005 1.0
## 52: CAC EUR 0.005 1.0
## 53: DAX EUR 0.005 2.5
## 54: DA1 EUR 0.005 1.0
## 55: UKX GBP 0.005 1.0
## 56: NKY JPY 0.005 100.0
## 57: NDX USD 0.005 10.0
## 58: SPX USD 0.005 25.0
## 59: SP1 USD 0.005 10.0
## 60: DJI USD 0.005 1.0
## 61: XBR USD 0.005 10.0
## 62: XTI USD 0.005 10.0
## 63: XNG USD 0.005 1000.0
## 64: ESX EUR 0.005 1.0
## 65: XAU USD 0.005 1.0
## 66: XAG USD 0.005 50.0
## 67: ND1 USD 0.005 1.0
## 68: DJ1 USD 0.005 0.1
## marginCurrency profitCurrency limitsComission minTradeVolume
## maxTradeVolume swapLong swapShort
## 1: 1.0e+08 -1.96000 0.27000
## 2: 1.0e+08 -13.84416 3.97403
## 3: 1.0e+08 -3.81481 0.83951
## 4: 1.0e+08 0.98148 -3.88889
## 5: 1.0e+08 -6.02469 1.53086
## 6: 1.0e+08 0.79012 -3.43210
## 7: 1.0e+08 -1.97531 0.18519
## 8: 1.0e+08 0.81481 -4.41975
## 9: 1.0e+08 3.41667 -18.83333
## 10: 1.0e+08 -45.69231 11.76923
## 11: 1.0e+08 1.78000 -6.36000
## 12: 1.0e+08 -5.17284 1.25926
## 13: 1.0e+08 2.24074 -8.17593
## 14: 1.0e+08 2.61000 -9.33000
## 15: 1.0e+08 -6.57143 1.28571
## 16: 1.0e+08 0.67593 -3.09259
## 17: 1.0e+08 0.50000 -3.09000
## 18: 1.0e+08 -0.24691 -1.03704
## 19: 1.0e+08 2.29630 -8.17284
## 20: 1.0e+08 -2.32692 0.52564
## 21: 1.0e+08 -62.07692 16.84615
## 22: 1.0e+08 0.00000 -9.66667
## 23: 1.0e+08 2.52780 -8.54630
## 24: 1.0e+08 1.44444 -5.09259
## 25: 1.0e+08 -13.67532 3.66234
## 26: 1.0e+08 -3.11111 0.38272
## 27: 1.0e+08 -26.48571 7.22857
## 28: 1.0e+08 2.48148 -9.29630
## 29: 1.0e+08 3.21296 -11.02778
## 30: 1.0e+08 3.32099 -11.80247
## 31: 1.0e+08 -23.50000 6.68571
## 32: 1.0e+08 1.37040 -5.38270
## 33: 1.0e+08 -305.33330 93.94444
## 34: 1.0e+08 -0.40741 -0.54321
## 35: 1.0e+08 9.66667 -36.66667
## 36: 1.0e+08 -124.78380 39.16216
## 37: 1.0e+08 -2.00000 -6.00000
## 38: 1.0e+08 -144.45950 45.40541
## 39: 1.0e+08 -0.36486 -1.02703
## 40: 1.0e+08 -22.88889 5.66667
## 41: 1.0e+08 -0.07407 -0.09877
## 42: 1.0e+08 0.83784 -4.67568
## 43: 1.0e+08 0.25926 -1.00000
## 44: 1.0e+08 -30.88889 8.11111
## 45: 1.0e+08 3.60811 -12.85135
## 46: 1.0e+08 2.33333 -8.25000
## 47: 1.0e+08 -12.92308 1.38462
## 48: 1.0e+08 -205.66670 56.50000
## 49: 1.0e+08 11.33333 -40.80000
## 50: 1.0e+08 -6.32298 2.27950
## 51: 1.0e+04 -5.01000 1.63000
## 52: 1.0e+04 -1.46000 0.00000
## 53: 2.5e+04 -8.44000 0.00000
## 54: 1.0e+04 -3.37000 0.00000
## 55: 1.0e+04 -3.04000 1.00000
## 56: 1.0e+06 -5.13000 0.32000
## 57: 1.0e+05 -15.35000 2.25000
## 58: 2.5e+05 -18.13000 2.65000
## 59: 1.0e+05 -7.25000 1.06000
## 60: 1.0e+04 -6.24000 0.91000
## 61: 1.0e+06 -4.03000 1.27000
## 62: 1.0e+06 -3.61000 0.20000
## 63: 1.0e+07 -0.20000 0.07000
## 64: 1.0e+04 -1.05000 0.00000
## 65: 1.0e+05 -0.79000 -0.83000
## 66: 5.0e+06 -0.42400 0.06800
## 67: 1.0e+04 -15.35000 2.25000
## 68: 1.0e+03 -6.24000 0.91000
## maxTradeVolume swapLong swapShort
ttGetCurrencyData()
## currency description precision sortOrder
## 1: ASX 5 25
## 2: AUD 5 6
## 3: CAC 5 26
## 4: CAD 5 7
## 5: CHF 5 5
## 6: CNH 5 10
## 7: DA1 5 28
## 8: DAX 5 27
## 9: DJ1 5 37
## 10: DJI 5 36
## 11: DKK 5 17
## 12: ESX 5 29
## 13: EUR 5 2
## 14: GBP 5 3
## 15: HKD 5 13
## 16: JPY 5 4
## 17: MXN 5 9
## 18: ND1 5 33
## 19: NDX 5 32
## 20: NKY 5 31
## 21: NOK 5 14
## 22: NZD 5 8
## 23: PLN 5 18
## 24: RUB 5 12
## 25: SEK 5 11
## 26: SGD 5 15
## 27: SP1 5 35
## 28: SPX 5 34
## 29: TRY 5 16
## 30: UKX 5 30
## 31: USD 5 1
## 32: XAG 5 19
## 33: XAU 5 20
## 34: XBR 5 38
## 35: XNG 5 40
## 36: XTI 5 39
## currency description precision sortOrder
Get 10000 bars of EURUSD symbol:
head(ttBarsHistory(“EURUSD”))
ttBarsHistory("EURUSD")
## high low open close volume from
## 1: 1.09820 1.09800 1.09806 1.09810 182800000 2015-07-23 12:40:00
## 2: 1.09841 1.09782 1.09822 1.09805 743161000 2015-07-23 12:39:00
## 3: 1.09903 1.09819 1.09902 1.09822 499108000 2015-07-23 12:38:00
## 4: 1.09908 1.09882 1.09902 1.09902 1143025000 2015-07-23 12:37:00
## 5: 1.09902 1.09847 1.09850 1.09902 751452000 2015-07-23 12:36:00
## ---
## 9996: 1.10228 1.10158 1.10228 1.10190 381770000 2015-07-14 14:18:00
## 9997: 1.10243 1.10214 1.10214 1.10228 300100000 2015-07-14 14:17:00
## 9998: 1.10215 1.10204 1.10209 1.10213 453775000 2015-07-14 14:16:00
## 9999: 1.10218 1.10207 1.10212 1.10209 360200000 2015-07-14 14:15:00
## 10000: 1.10231 1.10207 1.10227 1.10212 268559000 2015-07-14 14:14:00
## to
## 1: 2015-07-23 12:41:00
## 2: 2015-07-23 12:40:00
## 3: 2015-07-23 12:39:00
## 4: 2015-07-23 12:38:00
## 5: 2015-07-23 12:37:00
## ---
## 9996: 2015-07-14 14:19:00
## 9997: 2015-07-14 14:18:00
## 9998: 2015-07-14 14:17:00
## 9999: 2015-07-14 14:16:00
## 10000: 2015-07-14 14:15:00
Get 10000 bar quotes of EURUSD symbol:
bars = ttBarsQuotesHistory(“EURUSD”)
ttBarsQuotesHistory("EURUSD")
## askHigh askLow askopen askClose askVolume bidHigh bidLow bidOpen
## 1: 1.09824 1.09803 1.09806 1.09813 298079000 1.09820 1.09800 1.09806
## 2: 1.09840 1.09783 1.09826 1.09805 829597000 1.09841 1.09782 1.09822
## 3: 1.09906 1.09820 1.09904 1.09826 454498000 1.09903 1.09819 1.09902
## 4: 1.09909 1.09883 1.09901 1.09904 433317000 1.09908 1.09882 1.09902
## 5: 1.09900 1.09852 1.09854 1.09900 826922000 1.09902 1.09847 1.09850
## ---
## 9996: 1.10231 1.10159 1.10231 1.10192 354997000 1.10228 1.10158 1.10228
## 9997: 1.10245 1.10215 1.10216 1.10231 271500000 1.10243 1.10214 1.10214
## 9998: 1.10216 1.10205 1.10210 1.10214 323300000 1.10215 1.10204 1.10209
## 9999: 1.10220 1.10208 1.10213 1.10210 236500000 1.10218 1.10207 1.10212
## 10000: 1.10236 1.10208 1.10229 1.10213 346201000 1.10231 1.10207 1.10227
## bidClose bidVolume from to
## 1: 1.09809 208800000 2015-07-23 12:40:00 2015-07-23 12:41:00
## 2: 1.09805 743161000 2015-07-23 12:39:00 2015-07-23 12:40:00
## 3: 1.09822 499108000 2015-07-23 12:38:00 2015-07-23 12:39:00
## 4: 1.09902 1143025000 2015-07-23 12:37:00 2015-07-23 12:38:00
## 5: 1.09902 751452000 2015-07-23 12:36:00 2015-07-23 12:37:00
## ---
## 9996: 1.10190 381770000 2015-07-14 14:18:00 2015-07-14 14:19:00
## 9997: 1.10228 300100000 2015-07-14 14:17:00 2015-07-14 14:18:00
## 9998: 1.10213 453775000 2015-07-14 14:16:00 2015-07-14 14:17:00
## 9999: 1.10209 360200000 2015-07-14 14:15:00 2015-07-14 14:16:00
## 10000: 1.10212 268559000 2015-07-14 14:14:00 2015-07-14 14:15:00
Get quotes
now <-as.POSIXct(Sys.time())
# 300 seconds from present
prevNow <-as.POSIXct(now-(300))
ttQuotesHistory("EURUSD", startTime = prevNow, endTime=now)
## ask bid createTime
## 1: 1.09883 1.09879 2015-07-23 09:35:26
## 2: 1.09883 1.09879 2015-07-23 09:35:26
## 3: 1.09883 1.09879 2015-07-23 09:35:26
## 4: 1.09883 1.09880 2015-07-23 09:35:26
## 5: 1.09883 1.09879 2015-07-23 09:35:26
## ---
## 2391: 1.09813 1.09811 2015-07-23 09:40:26
## 2392: 1.09813 1.09810 2015-07-23 09:40:26
## 2393: 1.09813 1.09808 2015-07-23 09:40:26
## 2394: 1.09813 1.09808 2015-07-23 09:40:26
## 2395: 1.09809 1.09807 2015-07-23 09:40:26
Get quotes L2
now <-as.POSIXct(Sys.time())
# 1000 seconds from present
prevNow <-as.POSIXct(now-1000)
ttQuotesLevel2History('EURUSD', prevNow, now, depth=1)
## volumeBid volumeAsk priceBid priceAsk createTime
## 1: 4000000 200000 1.10145 1.10146 2015-07-23 12:23:49
## 2: 50000 1500000 1.10142 1.10143 2015-07-23 12:23:49
## 3: 1000000 200000 1.10136 1.10132 2015-07-23 12:23:49
## 4: 2050000 200000 1.10132 1.10132 2015-07-23 12:23:50
## 5: 3050000 700000 1.10130 1.10133 2015-07-23 12:23:50
## ---
## 7932: 2200000 50000 1.09800 1.09804 2015-07-23 12:40:28
## 7933: 2200000 50000 1.09800 1.09803 2015-07-23 12:40:28
## 7934: 50000 2000000 1.09801 1.09805 2015-07-23 12:40:29
## 7935: 50000 2000000 1.09802 1.09805 2015-07-23 12:40:29
## 7936: 50000 2000000 1.09802 1.09805 2015-07-23 12:40:29
## quoteIndex level
## 1: 1.437654e+12 1
## 2: 1.437654e+12 1
## 3: 1.437654e+12 1
## 4: 1.437654e+12 1
## 5: 1.437654e+12 1
## ---
## 7932: 1.437655e+12 1
## 7933: 1.437655e+12 1
## 7934: 1.437655e+12 1
## 7935: 1.437655e+12 1
## 7936: 1.437655e+12 1
Get trades of current account
now <-as.POSIXct(Sys.time())
#120 hours = 5 x 24 x 3600 seconds before now
prevNow <-as.POSIXct(now-(5 * 24*3600))
ttTradeRecords(prevNow, now)
## Empty data.table (0 rows) of 35 cols: AgentCommission,ClientId,CloseConversionRate,InitialVolume,Comment,Commission...
Trades in account:
# Commented as it takes to long
ttConnect("tp.st.soft-fx.eu", "100066", "123qwe!")
## [1] 0
head(ttTrades())
## Empty data.table (0 rows) of 20 cols: agentComission,tradeClientOrderId,tradeComment,created,expiration,initialVolume...
All trades
# Commented as it takes to long
ttTradeRecordAll()
## AgentCommission ClientId CloseConversionRate InitialVolume Comment
## 1: 0 -1
## Commission Id LeavesQuantity OpenConversionRate OrderCreated
## 1: 0 672002 0 -1 2015-07-09 14:10:06
## OrderFillPrice OrderLastFillAmount OrderModified OpenPrice ClosePrice
## 1: -1 -1 1970-01-01 0 0
## CloseRequestedPrice PositionClosed PositionLastQuantity
## 1: 0 1970-01-01 0
## PositionLeavesQuantity PositionModified PositionOpened PositionQuantity
## 1: 0 1970-01-01 1970-01-01 0
## Price Quantity StopLoss Swap Symbol TakeProfit TradeRecordSide
## 1: 0 0 0 0 0 -1
## TradeRecordType TradeTransactionReason TradeTransactionReportType
## 1: NA DealerDecision BalanceTransaction
## TransactionAmount TransactionCurrency TransactionTime
## 1: 1e+06 USD 2015-07-09 14:10:06