RTTWebClient

library(RTTWebClient)
library(lubridate)
#> 
#> Attaching package: 'lubridate'
#> The following objects are masked from 'package:base':
#> 
#>     date, intersect, setdiff, union

Example of RTTWebApi methods (basic class)

Init Public(default) Client Obj (reference R class)

ttWebClient <- InitPublicWebClient(server = "ttlivewebapi.fxopen.com")
#or use InitPrivateWebClient(server = "ttlivewebapi.fxopen.com", port = 8443, id = "", key = "", secret = "") to set a private connect. Need set HMAC id, key and secret

Get Dividends data.table

print(ttWebClient$GetDividendsFromWeb())
#> Warning in strptime(x, fmt, tz = "GMT"): unable to identify current timezone 'C':
#> please set environment variable 'TZ'
#>              Time   Fee GrossRate           Id Symbol
#>   1: 1.575470e+12 0.010   0.62000 6.371091e+17   QCOM
#>   2: 1.575902e+12 0.015   0.06000 6.371113e+17   GCAP
#>   3: 1.575556e+12 0.015   0.22987 6.371113e+17    SQM
#>   4: 1.583280e+12 0.010   0.62000 6.371884e+17   QCOM
#>   5: 1.583280e+12 0.010   3.63000 6.371884e+17    BLK
#>  ---                                                 
#> 584: 1.606833e+12 0.010  10.00000 6.374177e+17   COST
#> 585: 1.607524e+12 0.010   0.41500 6.374177e+17    PPL
#> 586: 1.607006e+12 0.010   0.79000 6.374186e+17    GPC
#> 587: 1.610116e+12 0.010   0.24500 6.374186e+17    HRL
#> 588: 1.606747e+12 0.010   1.29000 6.374220e+17    MCD

Get Symbol data.table

print(ttWebClient$GetSymbolsInfoFromWeb())
#>       DefaultSlippage MinCommission LimitsCommission Commission TradeAmountStep
#>    1:            0.02             0                0          0             0.1
#>    2:            0.02             0                0          0             0.1
#>    3:            0.02             0                0          0             0.1
#>    4:            0.02             0                0          0             0.1
#>    5:            0.02             0                0          0             0.1
#>   ---                                                                          
#> 1446:            0.02             0                0          0             1.0
#> 1447:            0.02             0                0          0             1.0
#> 1448:            0.02             0                0          0             1.0
#> 1449:            0.02             0                0          0             1.0
#> 1450:            0.02             0                0          0             1.0
#>       MaxTradeAmount MinTradeAmount IsLongOnly IsCloseOnly SwapEnabled
#>    1:          10000            0.1      FALSE       FALSE        TRUE
#>    2:          10000            0.1      FALSE       FALSE        TRUE
#>    3:          10000            0.1      FALSE       FALSE        TRUE
#>    4:          10000            0.1      FALSE       FALSE        TRUE
#>    5:          10000            0.1      FALSE       FALSE        TRUE
#>   ---                                                                 
#> 1446:         100000            1.0      FALSE       FALSE        TRUE
#> 1447:         100000            1.0      FALSE       FALSE        TRUE
#> 1448:         100000            1.0      FALSE       FALSE        TRUE
#> 1449:         100000            1.0      FALSE       FALSE        TRUE
#> 1450:         100000            1.0      FALSE       FALSE        TRUE
#>       IsTradeAllowed TripleSwapDay SwapSizeLong SwapSizeShort    Color
#>    1:           TRUE             3      -0.0225       -0.0175 -4173747
#>    2:          FALSE             3      -0.0225       -0.0175 -4173747
#>    3:           TRUE             3      -0.0153       -0.0247 -4173747
#>    4:          FALSE             3      -0.0153       -0.0247 -4173747
#>    5:           TRUE             3      -0.0153       -0.0247 -4173747
#>   ---                                                                 
#> 1446:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1447:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1448:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1449:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1450:          FALSE             3      -0.0150       -0.0450 -3278081
#>       ProfitCurrencyPrecision MarginCurrencyPrecision Precision
#>    1:                       2                       2         1
#>    2:                       2                       2         1
#>    3:                       2                       2         1
#>    4:                       2                       2         1
#>    5:                       2                       2         1
#>   ---                                                          
#> 1446:                       2                       2         2
#> 1447:                       2                       2         2
#> 1448:                       2                       2         2
#> 1449:                       2                       2         2
#> 1450:                       2                       2         2
#>       HiddenLimitOrderMarginReduction StopOrderMarginReduction MarginFactor
#>    1:                               1                        1         0.02
#>    2:                               1                        1         0.02
#>    3:                               1                        1         0.02
#>    4:                               1                        1         0.02
#>    5:                               1                        1         0.02
#>   ---                                                                      
#> 1446:                               1                        1         0.20
#> 1447:                               1                        1         0.20
#> 1448:                               1                        1         0.20
#> 1449:                               1                        1         0.20
#> 1450:                               1                        1         0.20
#>       MarginHedged ContractSize MarginMode ProfitMode       SwapType
#>    1:          0.5           10        CFD        CFD PercentPerYear
#>    2:          0.5           10        CFD        CFD PercentPerYear
#>    3:          0.5           10        CFD        CFD PercentPerYear
#>    4:          0.5           10        CFD        CFD PercentPerYear
#>    5:          0.5           10        CFD        CFD PercentPerYear
#>   ---                                                               
#> 1446:          0.5            1        CFD        CFD PercentPerYear
#> 1447:          0.5            1        CFD        CFD PercentPerYear
#> 1448:          0.5            1        CFD        CFD PercentPerYear
#> 1449:          0.5            1        CFD        CFD PercentPerYear
#> 1450:          0.5            1        CFD        CFD PercentPerYear
#>       CommissionType CommissionChargeType SlippageType         ExtendedName
#>    1:     Percentage              PerDeal      Percent          S&P ASX 200
#>    2:     Percentage              PerDeal      Percent          S&P ASX 200
#>    3:     Percentage              PerDeal      Percent         Eurostoxx 50
#>    4:     Percentage              PerDeal      Percent         Eurostoxx 50
#>    5:     Percentage              PerDeal      Percent               CAC 40
#>   ---                                                                      
#> 1446:     Percentage               PerLot      Percent Zions Bancorporation
#> 1447:     Percentage               PerLot      Percent           Zoom Video
#> 1448:     Percentage               PerLot      Percent           Zoom Video
#> 1449:     Percentage               PerLot      Percent               Zoetis
#> 1450:     Percentage               PerLot      Percent               Zoetis
#>                 SecurityDescription     SecurityName StatusGroupId
#>    1:               Indices Group 1      CFD Index 1     CFD 00-01
#>    2:  Last trades: Indices Group 1      CFD Index 1     CFD 00-01
#>    3:               Indices Group 1      CFD Index 1     CFD 00-01
#>    4:  Last trades: Indices Group 1      CFD Index 1     CFD 00-01
#>    5:               Indices Group 1      CFD Index 1     CFD 00-01
#>   ---                                                             
#> 1446: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1447:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1448: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1449:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1450: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#>       MinCommissionCurrency  Schedule
#>    1:                   USD CFD 00-01
#>    2:                   USD CFD 00-01
#>    3:                   USD CFD 00-01
#>    4:                   USD CFD 00-01
#>    5:                   USD CFD 00-01
#>   ---                                
#> 1446:                   USD US Stocks
#> 1447:                   USD US Stocks
#> 1448:                   USD US Stocks
#> 1449:                   USD US Stocks
#> 1450:                   USD US Stocks
#>                                           Description ProfitCurrency
#>    1:                    Australia 200 Index (AUS200)            AUD
#>    2:       Last trades: Australia 200 Index (AUS200)            AUD
#>    3:                         Europe 50 Index (ESX50)            EUR
#>    4:            Last trades: Europe 50 Index (ESX50)            EUR
#>    5:                          France 40 Index (FCHI)            EUR
#>   ---                                                               
#> 1446:   Last trades: Zions Bancorporation N.A. (ZION)            USD
#> 1447:              Zoom Video Communications Inc (ZM)            USD
#> 1448: Last trades: Zoom Video Communications Inc (ZM)            USD
#> 1449:                       Zoetis Inc. Class A (ZTS)            USD
#> 1450:          Last trades: Zoetis Inc. Class A (ZTS)            USD
#>       MarginCurrency    Symbol         ISIN
#>    1:            ASX   #AUS200 XC0006013624
#>    2:            ASX #AUS200_L XC0006013624
#>    3:            ESX    #ESX50 EU0009658145
#>    4:            ESX  #ESX50_L EU0009658145
#>    5:            CAC     #FCHI FR0003500008
#>   ---                                      
#> 1446:           ZION    ZION_L US9897011071
#> 1447:             ZM        ZM US98980L1017
#> 1448:             ZM      ZM_L US98980L1017
#> 1449:            ZTS       ZTS US98978V1035
#> 1450:            ZTS     ZTS_L US98978V1035

Get BarHistory data.table

print(ttWebClient$GetBarFromWeb("EURUSD", "Bid","M1", round(as.double(now("UTC")) * 1000), count = -10))
#>        Volume   Close     Low    High    Open    Timestamp
#>  1: 552549000 1.20797 1.20787 1.20801 1.20790 1.613658e+12
#>  2: 494475000 1.20772 1.20768 1.20802 1.20797 1.613658e+12
#>  3: 226450000 1.20771 1.20766 1.20778 1.20771 1.613658e+12
#>  4: 130950000 1.20778 1.20767 1.20782 1.20771 1.613658e+12
#>  5: 361703000 1.20754 1.20753 1.20783 1.20777 1.613659e+12
#>  6: 323840000 1.20768 1.20754 1.20782 1.20754 1.613659e+12
#>  7: 279023000 1.20741 1.20739 1.20776 1.20768 1.613659e+12
#>  8: 269344000 1.20750 1.20740 1.20767 1.20740 1.613659e+12
#>  9: 419000000 1.20765 1.20746 1.20769 1.20750 1.613659e+12
#> 10: 427646000 1.20779 1.20757 1.20780 1.20763 1.613659e+12

Get TickHistory data.table

print(ttWebClient$GetTicksFromWeb("EURUSD", round(as.double(now("UTC")) * 1000), count = -10))
#>        Timestamp BidPrice BidVolume BidType AskPrice AskVolume AskType
#>  1: 1.613659e+12  1.20779    500000     Bid  1.20781    700000     Ask
#>  2: 1.613659e+12  1.20779    500000     Bid  1.20781    200000     Ask
#>  3: 1.613659e+12  1.20778   1000000     Bid  1.20781   1300000     Ask
#>  4: 1.613659e+12  1.20778    500000     Bid  1.20781   2500000     Ask
#>  5: 1.613659e+12  1.20778   1000000     Bid  1.20781   2100000     Ask
#>  6: 1.613659e+12  1.20782    500000     Bid  1.20784    121000     Ask
#>  7: 1.613659e+12  1.20783   1000000     Bid  1.20785    200000     Ask
#>  8: 1.613659e+12  1.20783   1200000     Bid  1.20785    200000     Ask
#>  9: 1.613659e+12  1.20783   1400000     Bid  1.20785    200000     Ask
#> 10: 1.613659e+12  1.20782    500000     Bid  1.20783    200000     Ask

Example of RTTWebApiHost (Wrapper about RTTWebClient to make request from R easy)

Init RTTWebApiHost obj

ttWebApiHost <- InitRTTWebApiHost(server = "ttlivewebapi.fxopen.com")

Get Dividends data.table

print(ttWebApiHost$GetDividends())
#>              Time   Fee GrossRate           Id Symbol
#>   1: 1.575470e+12 0.010   0.62000 6.371091e+17   QCOM
#>   2: 1.575902e+12 0.015   0.06000 6.371113e+17   GCAP
#>   3: 1.575556e+12 0.015   0.22987 6.371113e+17    SQM
#>   4: 1.583280e+12 0.010   0.62000 6.371884e+17   QCOM
#>   5: 1.583280e+12 0.010   3.63000 6.371884e+17    BLK
#>  ---                                                 
#> 584: 1.606833e+12 0.010  10.00000 6.374177e+17   COST
#> 585: 1.607524e+12 0.010   0.41500 6.374177e+17    PPL
#> 586: 1.607006e+12 0.010   0.79000 6.374186e+17    GPC
#> 587: 1.610116e+12 0.010   0.24500 6.374186e+17    HRL
#> 588: 1.606747e+12 0.010   1.29000 6.374220e+17    MCD

Get Symbol data.table

print(ttWebApiHost$GetSymbolsInfo())
#>       DefaultSlippage MinCommission LimitsCommission Commission TradeAmountStep
#>    1:            0.02             0                0          0             0.1
#>    2:            0.02             0                0          0             0.1
#>    3:            0.02             0                0          0             0.1
#>    4:            0.02             0                0          0             0.1
#>    5:            0.02             0                0          0             0.1
#>   ---                                                                          
#> 1446:            0.02             0                0          0             1.0
#> 1447:            0.02             0                0          0             1.0
#> 1448:            0.02             0                0          0             1.0
#> 1449:            0.02             0                0          0             1.0
#> 1450:            0.02             0                0          0             1.0
#>       MaxTradeAmount MinTradeAmount IsLongOnly IsCloseOnly SwapEnabled
#>    1:          10000            0.1      FALSE       FALSE        TRUE
#>    2:          10000            0.1      FALSE       FALSE        TRUE
#>    3:          10000            0.1      FALSE       FALSE        TRUE
#>    4:          10000            0.1      FALSE       FALSE        TRUE
#>    5:          10000            0.1      FALSE       FALSE        TRUE
#>   ---                                                                 
#> 1446:         100000            1.0      FALSE       FALSE        TRUE
#> 1447:         100000            1.0      FALSE       FALSE        TRUE
#> 1448:         100000            1.0      FALSE       FALSE        TRUE
#> 1449:         100000            1.0      FALSE       FALSE        TRUE
#> 1450:         100000            1.0      FALSE       FALSE        TRUE
#>       IsTradeAllowed TripleSwapDay SwapSizeLong SwapSizeShort    Color
#>    1:           TRUE             3      -0.0225       -0.0175 -4173747
#>    2:          FALSE             3      -0.0225       -0.0175 -4173747
#>    3:           TRUE             3      -0.0153       -0.0247 -4173747
#>    4:          FALSE             3      -0.0153       -0.0247 -4173747
#>    5:           TRUE             3      -0.0153       -0.0247 -4173747
#>   ---                                                                 
#> 1446:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1447:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1448:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1449:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1450:          FALSE             3      -0.0150       -0.0450 -3278081
#>       ProfitCurrencyPrecision MarginCurrencyPrecision Precision
#>    1:                       2                       2         1
#>    2:                       2                       2         1
#>    3:                       2                       2         1
#>    4:                       2                       2         1
#>    5:                       2                       2         1
#>   ---                                                          
#> 1446:                       2                       2         2
#> 1447:                       2                       2         2
#> 1448:                       2                       2         2
#> 1449:                       2                       2         2
#> 1450:                       2                       2         2
#>       HiddenLimitOrderMarginReduction StopOrderMarginReduction MarginFactor
#>    1:                               1                        1         0.02
#>    2:                               1                        1         0.02
#>    3:                               1                        1         0.02
#>    4:                               1                        1         0.02
#>    5:                               1                        1         0.02
#>   ---                                                                      
#> 1446:                               1                        1         0.20
#> 1447:                               1                        1         0.20
#> 1448:                               1                        1         0.20
#> 1449:                               1                        1         0.20
#> 1450:                               1                        1         0.20
#>       MarginHedged ContractSize MarginMode ProfitMode       SwapType
#>    1:          0.5           10        CFD        CFD PercentPerYear
#>    2:          0.5           10        CFD        CFD PercentPerYear
#>    3:          0.5           10        CFD        CFD PercentPerYear
#>    4:          0.5           10        CFD        CFD PercentPerYear
#>    5:          0.5           10        CFD        CFD PercentPerYear
#>   ---                                                               
#> 1446:          0.5            1        CFD        CFD PercentPerYear
#> 1447:          0.5            1        CFD        CFD PercentPerYear
#> 1448:          0.5            1        CFD        CFD PercentPerYear
#> 1449:          0.5            1        CFD        CFD PercentPerYear
#> 1450:          0.5            1        CFD        CFD PercentPerYear
#>       CommissionType CommissionChargeType SlippageType         ExtendedName
#>    1:     Percentage              PerDeal      Percent          S&P ASX 200
#>    2:     Percentage              PerDeal      Percent          S&P ASX 200
#>    3:     Percentage              PerDeal      Percent         Eurostoxx 50
#>    4:     Percentage              PerDeal      Percent         Eurostoxx 50
#>    5:     Percentage              PerDeal      Percent               CAC 40
#>   ---                                                                      
#> 1446:     Percentage               PerLot      Percent Zions Bancorporation
#> 1447:     Percentage               PerLot      Percent           Zoom Video
#> 1448:     Percentage               PerLot      Percent           Zoom Video
#> 1449:     Percentage               PerLot      Percent               Zoetis
#> 1450:     Percentage               PerLot      Percent               Zoetis
#>                 SecurityDescription     SecurityName StatusGroupId
#>    1:               Indices Group 1      CFD Index 1     CFD 00-01
#>    2:  Last trades: Indices Group 1      CFD Index 1     CFD 00-01
#>    3:               Indices Group 1      CFD Index 1     CFD 00-01
#>    4:  Last trades: Indices Group 1      CFD Index 1     CFD 00-01
#>    5:               Indices Group 1      CFD Index 1     CFD 00-01
#>   ---                                                             
#> 1446: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1447:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1448: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1449:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1450: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#>       MinCommissionCurrency  Schedule
#>    1:                   USD CFD 00-01
#>    2:                   USD CFD 00-01
#>    3:                   USD CFD 00-01
#>    4:                   USD CFD 00-01
#>    5:                   USD CFD 00-01
#>   ---                                
#> 1446:                   USD US Stocks
#> 1447:                   USD US Stocks
#> 1448:                   USD US Stocks
#> 1449:                   USD US Stocks
#> 1450:                   USD US Stocks
#>                                           Description ProfitCurrency
#>    1:                    Australia 200 Index (AUS200)            AUD
#>    2:       Last trades: Australia 200 Index (AUS200)            AUD
#>    3:                         Europe 50 Index (ESX50)            EUR
#>    4:            Last trades: Europe 50 Index (ESX50)            EUR
#>    5:                          France 40 Index (FCHI)            EUR
#>   ---                                                               
#> 1446:   Last trades: Zions Bancorporation N.A. (ZION)            USD
#> 1447:              Zoom Video Communications Inc (ZM)            USD
#> 1448: Last trades: Zoom Video Communications Inc (ZM)            USD
#> 1449:                       Zoetis Inc. Class A (ZTS)            USD
#> 1450:          Last trades: Zoetis Inc. Class A (ZTS)            USD
#>       MarginCurrency    Symbol         ISIN
#>    1:            ASX   #AUS200 XC0006013624
#>    2:            ASX #AUS200_L XC0006013624
#>    3:            ESX    #ESX50 EU0009658145
#>    4:            ESX  #ESX50_L EU0009658145
#>    5:            CAC     #FCHI FR0003500008
#>   ---                                      
#> 1446:           ZION    ZION_L US9897011071
#> 1447:             ZM        ZM US98980L1017
#> 1448:             ZM      ZM_L US98980L1017
#> 1449:            ZTS       ZTS US98978V1035
#> 1450:            ZTS     ZTS_L US98978V1035

Get BarHistory data.table

print(ttWebApiHost$GetBarsHistory("EURUSD", "Bid","M1", now("UTC") - days(1), now("UTC")))
#>          Volume   Close     Low    High    Open           Timestamp
#>    1: 227450000 1.20458 1.20422 1.20463 1.20434 2021-02-17 14:35:00
#>    2: 258455000 1.20457 1.20455 1.20475 1.20458 2021-02-17 14:36:00
#>    3: 259045000 1.20442 1.20439 1.20475 1.20456 2021-02-17 14:37:00
#>    4: 282007000 1.20438 1.20423 1.20445 1.20440 2021-02-17 14:38:00
#>    5:  34996000 1.20416 1.20415 1.20451 1.20438 2021-02-17 14:39:00
#>   ---                                                              
#> 1413: 279023000 1.20741 1.20739 1.20776 1.20768 2021-02-18 14:31:00
#> 1414: 269344000 1.20750 1.20740 1.20767 1.20740 2021-02-18 14:32:00
#> 1415: 419000000 1.20765 1.20746 1.20769 1.20750 2021-02-18 14:33:00
#> 1416: 427646000 1.20779 1.20757 1.20780 1.20763 2021-02-18 14:34:00
#> 1417:  60782000 1.20782 1.20778 1.20783 1.20778 2021-02-18 14:35:00

Get TicksHistory data.table

print(ttWebApiHost$GetTickHistory("EURUSD",  now("UTC") - days(1), now("UTC")))
#>                   Timestamp BidPrice BidVolume BidType AskPrice AskVolume
#>      1: 2021-02-17 14:35:05  1.20422   1850000     Bid  1.20426    248000
#>      2: 2021-02-17 14:35:05  1.20422   1850000     Bid  1.20426    700000
#>      3: 2021-02-17 14:35:06  1.20422    850000     Bid  1.20426    700000
#>      4: 2021-02-17 14:35:06  1.20424   1000000     Bid  1.20426    652000
#>      5: 2021-02-17 14:35:06  1.20424   1000000     Bid  1.20427     48000
#>     ---                                                                  
#> 115627: 2021-02-18 14:35:04  1.20781   1400000     Bid  1.20784    200000
#> 115628: 2021-02-18 14:35:05  1.20781   1000000     Bid  1.20784    321000
#> 115629: 2021-02-18 14:35:05  1.20782   1600000     Bid  1.20784    200000
#> 115630: 2021-02-18 14:35:05  1.20782   2300000     Bid  1.20784    200000
#> 115631: 2021-02-18 14:35:05  1.20782   2000000     Bid  1.20784    200000
#>         AskType
#>      1:     Ask
#>      2:     Ask
#>      3:     Ask
#>      4:     Ask
#>      5:     Ask
#>     ---        
#> 115627:     Ask
#> 115628:     Ask
#> 115629:     Ask
#> 115630:     Ask
#> 115631:     Ask