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
#>   ---                                                                          
#> 1474:            0.02             0                0          0             1.0
#> 1475:            0.02             0                0          0             1.0
#> 1476:            0.02             0                0          0             1.0
#> 1477:            0.02             0                0          0             1.0
#> 1478:            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
#>   ---                                                                 
#> 1474:         100000            1.0      FALSE       FALSE        TRUE
#> 1475:         100000            1.0      FALSE       FALSE        TRUE
#> 1476:         100000            1.0      FALSE       FALSE        TRUE
#> 1477:         100000            1.0      FALSE       FALSE        TRUE
#> 1478:         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
#>   ---                                                                 
#> 1474:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1475:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1476:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1477:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1478:          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
#>   ---                                                          
#> 1474:                       2                       2         2
#> 1475:                       2                       2         2
#> 1476:                       2                       2         2
#> 1477:                       2                       2         2
#> 1478:                       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
#>   ---                                                                      
#> 1474:                               1                        1         0.20
#> 1475:                               1                        1         0.20
#> 1476:                               1                        1         0.20
#> 1477:                               1                        1         0.20
#> 1478:                               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
#>   ---                                                               
#> 1474:          0.5            1        CFD        CFD PercentPerYear
#> 1475:          0.5            1        CFD        CFD PercentPerYear
#> 1476:          0.5            1        CFD        CFD PercentPerYear
#> 1477:          0.5            1        CFD        CFD PercentPerYear
#> 1478:          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
#>   ---                                                                      
#> 1474:     Percentage               PerLot      Percent Zions Bancorporation
#> 1475:     Percentage               PerLot      Percent           Zoom Video
#> 1476:     Percentage               PerLot      Percent           Zoom Video
#> 1477:     Percentage               PerLot      Percent               Zoetis
#> 1478:     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
#>   ---                                                             
#> 1474: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1475:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1476: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1477:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1478: 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
#>   ---                                
#> 1474:                   USD US Stocks
#> 1475:                   USD US Stocks
#> 1476:                   USD US Stocks
#> 1477:                   USD US Stocks
#> 1478:                   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
#>   ---                                                               
#> 1474:   Last trades: Zions Bancorporation N.A. (ZION)            USD
#> 1475:              Zoom Video Communications Inc (ZM)            USD
#> 1476: Last trades: Zoom Video Communications Inc (ZM)            USD
#> 1477:                       Zoetis Inc. Class A (ZTS)            USD
#> 1478:          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
#>   ---                                      
#> 1474:           ZION    ZION_L US9897011071
#> 1475:             ZM        ZM US98980L1017
#> 1476:             ZM      ZM_L US98980L1017
#> 1477:            ZTS       ZTS US98978V1035
#> 1478:            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: 13200000 1.18908 1.18899 1.18910 1.18899 1.615310e+12
#>  2:  8004000 1.18895 1.18895 1.18908 1.18908 1.615310e+12
#>  3:  6399000 1.18883 1.18882 1.18897 1.18894 1.615310e+12
#>  4: 10600000 1.18872 1.18869 1.18889 1.18886 1.615310e+12
#>  5: 14036000 1.18859 1.18859 1.18872 1.18871 1.615310e+12
#>  6: 12200000 1.18858 1.18851 1.18861 1.18861 1.615310e+12
#>  7: 12400000 1.18855 1.18851 1.18871 1.18858 1.615311e+12
#>  8: 13000000 1.18847 1.18845 1.18858 1.18858 1.615311e+12
#>  9: 19510000 1.18857 1.18846 1.18874 1.18848 1.615311e+12
#> 10: 10600000 1.18839 1.18836 1.18857 1.18857 1.615311e+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.615311e+12  1.18839    200000     Bid  1.18842    200000     Ask
#>  2: 1.615311e+12  1.18838    200000     Bid  1.18842    200000     Ask
#>  3: 1.615311e+12  1.18839    200000     Bid  1.18842    200000     Ask
#>  4: 1.615311e+12  1.18838    200000     Bid  1.18842    200000     Ask
#>  5: 1.615311e+12  1.18843    200000     Bid  1.18846    200000     Ask
#>  6: 1.615311e+12  1.18842    200000     Bid  1.18845    200000     Ask
#>  7: 1.615311e+12  1.18845    200000     Bid  1.18848    200000     Ask
#>  8: 1.615311e+12  1.18844    200000     Bid  1.18847    200000     Ask
#>  9: 1.615311e+12  1.18843    200000     Bid  1.18847    200000     Ask
#> 10: 1.615311e+12  1.18842    200000     Bid  1.18846    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
#>   ---                                                                          
#> 1474:            0.02             0                0          0             1.0
#> 1475:            0.02             0                0          0             1.0
#> 1476:            0.02             0                0          0             1.0
#> 1477:            0.02             0                0          0             1.0
#> 1478:            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
#>   ---                                                                 
#> 1474:         100000            1.0      FALSE       FALSE        TRUE
#> 1475:         100000            1.0      FALSE       FALSE        TRUE
#> 1476:         100000            1.0      FALSE       FALSE        TRUE
#> 1477:         100000            1.0      FALSE       FALSE        TRUE
#> 1478:         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
#>   ---                                                                 
#> 1474:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1475:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1476:          FALSE             3      -0.0150       -0.0450 -3278081
#> 1477:           TRUE             3      -0.0150       -0.0450 -3278081
#> 1478:          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
#>   ---                                                          
#> 1474:                       2                       2         2
#> 1475:                       2                       2         2
#> 1476:                       2                       2         2
#> 1477:                       2                       2         2
#> 1478:                       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
#>   ---                                                                      
#> 1474:                               1                        1         0.20
#> 1475:                               1                        1         0.20
#> 1476:                               1                        1         0.20
#> 1477:                               1                        1         0.20
#> 1478:                               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
#>   ---                                                               
#> 1474:          0.5            1        CFD        CFD PercentPerYear
#> 1475:          0.5            1        CFD        CFD PercentPerYear
#> 1476:          0.5            1        CFD        CFD PercentPerYear
#> 1477:          0.5            1        CFD        CFD PercentPerYear
#> 1478:          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
#>   ---                                                                      
#> 1474:     Percentage               PerLot      Percent Zions Bancorporation
#> 1475:     Percentage               PerLot      Percent           Zoom Video
#> 1476:     Percentage               PerLot      Percent           Zoom Video
#> 1477:     Percentage               PerLot      Percent               Zoetis
#> 1478:     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
#>   ---                                                             
#> 1474: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1475:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1476: Last trades: US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1477:              US Stocks & ETFs US Stocks & ETFs     US Stocks
#> 1478: 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
#>   ---                                
#> 1474:                   USD US Stocks
#> 1475:                   USD US Stocks
#> 1476:                   USD US Stocks
#> 1477:                   USD US Stocks
#> 1478:                   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
#>   ---                                                               
#> 1474:   Last trades: Zions Bancorporation N.A. (ZION)            USD
#> 1475:              Zoom Video Communications Inc (ZM)            USD
#> 1476: Last trades: Zoom Video Communications Inc (ZM)            USD
#> 1477:                       Zoetis Inc. Class A (ZTS)            USD
#> 1478:          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
#>   ---                                      
#> 1474:           ZION    ZION_L US9897011071
#> 1475:             ZM        ZM US98980L1017
#> 1476:             ZM      ZM_L US98980L1017
#> 1477:            ZTS       ZTS US98978V1035
#> 1478:            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: 11400000 1.18535 1.18535 1.18542 1.18539 2021-03-08 17:26:00
#>    2: 10413000 1.18539 1.18532 1.18549 1.18534 2021-03-08 17:27:00
#>    3: 12553000 1.18510 1.18510 1.18539 1.18539 2021-03-08 17:28:00
#>    4: 15549000 1.18517 1.18506 1.18523 1.18513 2021-03-08 17:29:00
#>    5: 17872000 1.18519 1.18516 1.18536 1.18518 2021-03-08 17:30:00
#>   ---                                                             
#> 1422: 12400000 1.18855 1.18851 1.18871 1.18858 2021-03-09 17:22:00
#> 1423: 13000000 1.18847 1.18845 1.18858 1.18858 2021-03-09 17:23:00
#> 1424: 19510000 1.18857 1.18846 1.18874 1.18848 2021-03-09 17:24:00
#> 1425: 10600000 1.18839 1.18836 1.18857 1.18857 2021-03-09 17:25:00
#> 1426: 10403000 1.18863 1.18831 1.18868 1.18838 2021-03-09 17:26:00

Get TicksHistory data.table

print(ttWebApiHost$GetTickHistory("EURUSD",  now("UTC") - days(1), now("UTC")))
#>                  Timestamp BidPrice BidVolume BidType AskPrice AskVolume
#>     1: 2021-03-08 17:26:58  1.18536     2e+05     Bid  1.18540     2e+05
#>     2: 2021-03-08 17:26:59  1.18535     2e+05     Bid  1.18539     2e+05
#>     3: 2021-03-08 17:26:59  1.18535     2e+05     Bid  1.18537     2e+05
#>     4: 2021-03-08 17:27:00  1.18534     2e+05     Bid  1.18537     2e+05
#>     5: 2021-03-08 17:27:01  1.18532     2e+05     Bid  1.18535     2e+05
#>    ---                                                                  
#> 85498: 2021-03-09 17:26:57  1.18867     2e+05     Bid  1.18871     2e+05
#> 85499: 2021-03-09 17:26:57  1.18867     2e+05     Bid  1.18872     2e+05
#> 85500: 2021-03-09 17:26:57  1.18868     2e+05     Bid  1.18872     2e+05
#> 85501: 2021-03-09 17:26:57  1.18863     2e+05     Bid  1.18868     2e+05
#> 85502: 2021-03-09 17:26:58  1.18864     2e+05     Bid  1.18868     2e+05
#>        AskType
#>     1:     Ask
#>     2:     Ask
#>     3:     Ask
#>     4:     Ask
#>     5:     Ask
#>    ---        
#> 85498:     Ask
#> 85499:     Ask
#> 85500:     Ask
#> 85501:     Ask
#> 85502:     Ask