# Data Retrieval - Bars

This section contains 3 examples for Data Retrieval - Bars using the `onetick-py`.<br />
\\\\
Each example is a self-contained script that can be run against the OneTick Cloud sample databases.

```default
# onetick-py WebAPI configuration for OneTick Cloud
import os
os.environ['OTP_WEBAPI'] = '1'
os.environ['OTP_HTTP_ADDRESS'] = 'https://rest.cloud.onetick.com'
os.environ['OTP_ACCESS_TOKEN_URL'] = 'https://cloud-auth.parent.onetick.com/realms/OMD/protocol/openid-connect/token'
os.environ['OTP_CLIENT_ID'] = '__FILL_IN__'
os.environ['OTP_CLIENT_SECRET'] = '__FILL_IN__'
```

## Daily Trade Bars

Retrieve Daily OHLC Records from the `US_COMP_SAMPLE_DAILY` database, and `DAY` table.

```ipython3
import onetick.py as otp

data = otp.DataSource(db='US_COMP_SAMPLE_DAILY', tick_type='DAY')
result = otp.run(data,
                 start=otp.dt(2024, 1, 1),
                 end=otp.dt(2024, 2, 1),
                 timezone='America/New_York',
                 symbols='CSCO')
result
```

```myst-ansi
                   Time EXCHANGE    OPEN    HIGH    LOW   CLOSE    VOLUME  \
0   2024-01-02 20:15:00        A  50.460  50.830  50.27  50.550     62688   
1   2024-01-02 20:15:00        B  50.420  50.830  50.29  50.530     40416   
2   2024-01-02 20:15:00        C  50.505  50.800  50.26  50.520     82490   
3   2024-01-02 20:15:00        D  50.470  50.860  50.25  50.530   7404940   
4   2024-01-02 20:15:00        H  50.490  50.830  50.26  50.530    136771   
..                  ...      ...     ...     ...    ...     ...       ...   
373 2024-01-31 20:15:00        V  51.865  51.905  50.12  50.175   1038760   
374 2024-01-31 20:15:00        X  51.770  51.770  50.12  50.180     76701   
375 2024-01-31 20:15:00        Y  51.340  51.340  50.12  50.180    186667   
376 2024-01-31 20:15:00        Z  51.810  51.850  50.11  50.170   1519391   
377 2024-01-31 20:15:00           51.850  51.940  50.07  50.180  29311787   

          VWAP  PRICE_OPENING_AUCTION  VOLUME_OPENING_AUCTION  \
0    50.420217                    NaN                       0   
1    50.508402                    NaN                       0   
2    50.477827                    NaN                       0   
3    50.551240                    NaN                       0   
4    50.464547                    NaN                       0   
..         ...                    ...                     ...   
373  50.556664                    NaN                       0   
374  50.567621                    NaN                       0   
375  50.425931                    NaN                       0   
376  50.477362                    NaN                       0   
377  50.479861                    NaN                  267748   

     PRICE_CLOSING_AUCTION  VOLUME_CLOSING_AUCTION  VOLUME_MAIN_SESSION  \
0                      NaN                       0                61348   
1                      NaN                       0                40416   
2                      NaN                       0                82486   
3                      NaN                       0              6164089   
4                      NaN                       0               136771   
..                     ...                     ...                  ...   
373                    NaN                       0              1038570   
374                    NaN                       0                76701   
375                    NaN                       0               186667   
376                    NaN                       0              1516783   
377                    NaN                 5533800             21851859   

     VOLUME_PRE_MARKET  VOLUME_POST_MARKET  VOLUME_ODD_LOT  VOLUME_ROUND_LOT  \
0                 1340                   0            4804             57884   
1                    0                   0            8160             32256   
2                    4                   0           17930             64560   
3                 4769             1236082          478272           6926668   
4                    0                   0           23687            113084   
..                 ...                 ...             ...               ...   
373                190                   0           66001            972759   
374                  0                   0            5555             71146   
375                  0                   0           28118            158549   
376               2579                  29          180563           1338828   
377              51439             1606941         2071248          27240539   

     VOLUME_OFF_EXCHANGE  OMDSEQ  
0                      0   30021  
1                      0   30022  
2                      0   30023  
3                7404940   30024  
4                      0   30025  
..                   ...     ...  
373                    0   29789  
374                    0   29790  
375                    0   29791  
376                    0   29792  
377             10210813   29793  

[378 rows x 19 columns]
```

## Minute Trade Bars

Retrieve pre-calculated 1 minute Trade Bars from the `US_COMP_SAMPLE_BARS` database, and `TRD_1M` table.<br />
\\\\
Bars are calculated at the end of each minute, so setting time range from 09:31 to 16:01.

```ipython3
import onetick.py as otp

data = otp.DataSource(db='US_COMP_SAMPLE_BARS', tick_type='TRD_1M')
result = otp.run(data,
                 start=otp.dt(2024, 1, 3, 9, 31),
                 end=otp.dt(2024, 1, 3, 16, 1),
                 timezone='America/New_York',
                 symbols='CSCO')
result
```

```myst-ansi
                   Time                    FIRST_TIME    FIRST  FIRST_SIZE  \
0   2024-01-03 09:31:00 2024-01-03 09:30:00.127459523  50.1700         100   
1   2024-01-03 09:32:00 2024-01-03 09:31:04.039361452  50.1501         210   
2   2024-01-03 09:33:00 2024-01-03 09:32:01.135031886  50.0900         100   
3   2024-01-03 09:34:00 2024-01-03 09:33:01.573754500  50.0400         100   
4   2024-01-03 09:35:00 2024-01-03 09:34:00.147786878  50.0200         100   
..                  ...                           ...      ...         ...   
385 2024-01-03 15:56:00 2024-01-03 15:55:00.024403059  50.4800         100   
386 2024-01-03 15:57:00 2024-01-03 15:56:00.200203893  50.5100         100   
387 2024-01-03 15:58:00 2024-01-03 15:57:00.199711671  50.5150         200   
388 2024-01-03 15:59:00 2024-01-03 15:58:00.000316902  50.5200         100   
389 2024-01-03 16:00:00 2024-01-03 15:59:00.000861861  50.5300         200   

                        HIGH_TIME     HIGH  HIGH_SIZE  \
0   2024-01-03 09:30:04.203519590  50.2200        100   
1   2024-01-03 09:31:04.532601592  50.1750        100   
2   2024-01-03 09:32:01.135031886  50.0900        100   
3   2024-01-03 09:33:06.244990351  50.0600        100   
4   2024-01-03 09:34:45.686497272  50.0400        100   
..                            ...      ...        ...   
385 2024-01-03 15:55:49.932002214  50.5199        100   
386 2024-01-03 15:56:55.714073540  50.5300        290   
387 2024-01-03 15:57:10.756235710  50.5450        200   
388 2024-01-03 15:58:34.858710440  50.5450        100   
389 2024-01-03 15:59:34.102288914  50.5600        100   

                         LOW_TIME      LOW  LOW_SIZE  \
0   2024-01-03 09:30:00.280877749  50.0020       200   
1   2024-01-03 09:31:46.066142387  50.0800       100   
2   2024-01-03 09:32:58.010510866  50.0301       267   
3   2024-01-03 09:33:53.740006921  50.0000       200   
4   2024-01-03 09:34:33.162152409  50.0000       100   
..                            ...      ...       ...   
385 2024-01-03 15:55:00.117020300  50.4700       100   
386 2024-01-03 15:56:12.301937097  50.4850       300   
387 2024-01-03 15:57:00.675307866  50.5100       100   
388 2024-01-03 15:58:09.987777690  50.5100       400   
389 2024-01-03 15:59:10.994674253  50.5200       200   

                        LAST_TIME    LAST  LAST_SIZE       VWAP       TWAP  \
0   2024-01-03 09:30:59.206785096  50.160        100  50.141276  50.147029   
1   2024-01-03 09:31:59.457678670  50.090        228  50.124406  50.114364   
2   2024-01-03 09:32:59.301339757  50.040        100  50.070231  50.066961   
3   2024-01-03 09:33:56.264120820  50.025        100  50.030940  50.031961   
4   2024-01-03 09:34:59.152722398  50.020        100  50.022197  50.022726   
..                            ...     ...        ...        ...        ...   
385 2024-01-03 15:55:59.409859714  50.505        400  50.499198  50.500819   
386 2024-01-03 15:56:59.532887305  50.515        100  50.504659  50.502380   
387 2024-01-03 15:57:59.455946880  50.520        100  50.527872  50.530826   
388 2024-01-03 15:58:59.649347440  50.530        200  50.531480  50.529147   
389 2024-01-03 15:59:59.990217289  50.520       4300  50.540520  50.538417   

     VOLUME TRADE_CURRENCY  TRADE_TICK_COUNT  CLOUD_DB  OMDSEQ  
0     69657            USD               418  NYSE_TAQ       0  
1     39792            USD               244  NYSE_TAQ       0  
2     26904            USD               187  NYSE_TAQ       0  
3     32673            USD               149  NYSE_TAQ       0  
4     32783            USD               173  NYSE_TAQ       0  
..      ...            ...               ...       ...     ...  
385  185335            USD               925  NYSE_TAQ       0  
386  166268            USD               850  NYSE_TAQ       0  
387  346983            USD              1277  NYSE_TAQ       0  
388  166368            USD               669  NYSE_TAQ       0  
389  627351            USD              2058  NYSE_TAQ       0  

[390 rows x 20 columns]
```

## Minute Quote Bars

Retrieve pre-calculated 1 minute Quote Bars from the `US_COMP_SAMPLE_BARS` database, and `QTE_1M` table.
Bars are calculated at the end of each minute, so setting time range from 09:31 to 16:01.

```ipython3
import onetick.py as otp

data = otp.DataSource(db='US_COMP_SAMPLE_BARS', tick_type='QTE_1M')
result = otp.run(data,
                 start=otp.dt(2024, 1, 3, 9, 31),
                 end=otp.dt(2024, 1, 3, 16, 1),
                 timezone='America/New_York',
                 symbols='CSCO')
result
```

```myst-ansi
                   Time                FIRST_BID_TIME  FIRST_BID_PRICE  \
0   2024-01-03 09:31:00 2024-01-03 09:30:00.001830617            50.00   
1   2024-01-03 09:32:00 2024-01-03 09:31:00.001237971            50.15   
2   2024-01-03 09:33:00 2024-01-03 09:32:00.005627484            50.08   
3   2024-01-03 09:34:00 2024-01-03 09:33:00.000548600            50.03   
4   2024-01-03 09:35:00 2024-01-03 09:34:00.003041083            50.02   
..                  ...                           ...              ...   
385 2024-01-03 15:56:00 2024-01-03 15:55:00.000474694            50.47   
386 2024-01-03 15:57:00 2024-01-03 15:56:00.003980007            50.50   
387 2024-01-03 15:58:00 2024-01-03 15:57:00.005213668            50.51   
388 2024-01-03 15:59:00 2024-01-03 15:58:00.000316689            50.52   
389 2024-01-03 16:00:00 2024-01-03 15:59:00.000862449            50.53   

     FIRST_BID_SIZE                FIRST_ASK_TIME  FIRST_ASK_PRICE  \
0                 9 2024-01-03 09:30:00.001830617            50.18   
1                 5 2024-01-03 09:31:00.001237971            50.17   
2                 4 2024-01-03 09:32:00.005627484            50.10   
3                 5 2024-01-03 09:33:00.000548600            50.05   
4                 7 2024-01-03 09:34:00.003041083            50.03   
..              ...                           ...              ...   
385              29 2024-01-03 15:55:00.000474694            50.48   
386              21 2024-01-03 15:56:00.003980007            50.51   
387              60 2024-01-03 15:57:00.005213668            50.52   
388              24 2024-01-03 15:58:00.000316689            50.53   
389              43 2024-01-03 15:59:00.000862449            50.54   

     FIRST_ASK_SIZE                 HIGH_BID_TIME  HIGH_BID  HIGH_BID_SIZE  \
0                 2 2024-01-03 09:30:04.009983752     50.22              1   
1                 7 2024-01-03 09:31:04.425141902     50.17              1   
2                 5 2024-01-03 09:32:00.005627484     50.08              4   
3                 7 2024-01-03 09:33:06.134568404     50.06              1   
4                 1 2024-01-03 09:34:55.666761587     50.04              2   
..              ...                           ...       ...            ...   
385              24 2024-01-03 15:55:45.729449709     50.51              2   
386              72 2024-01-03 15:56:54.524957985     50.52             25   
387              66 2024-01-03 15:57:10.754109243     50.54              1   
388             108 2024-01-03 15:58:34.796592944     50.54              2   
389             184 2024-01-03 15:59:28.015286783     50.55             12   

     ...  MID_LAST  SPREAD_MIN SPREAD_MAX  SPREAD_TWAP  SPREAD_MEDIAN  \
0    ...    50.160         0.0       0.18     0.018177           0.02   
1    ...    50.090         0.0       0.02     0.014063           0.01   
2    ...    50.040         0.0       0.02     0.014197           0.01   
3    ...    50.025         0.0       0.02     0.012603           0.01   
4    ...    50.015         0.0       0.02     0.012166           0.01   
..   ...       ...         ...        ...          ...            ...   
385  ...    50.505         0.0       0.02     0.009952           0.01   
386  ...    50.515         0.0       0.02     0.010000           0.01   
387  ...    50.525         0.0       0.02     0.009999           0.01   
388  ...    50.535         0.0       0.02     0.010000           0.01   
389  ...    50.525         0.0       0.02     0.009978           0.01   

     SPREAD_LAST  QUOTE_CURRENCY QUOTE_TICK_COUNT  CLOUD_DB  OMDSEQ  
0           0.02             USD            10370  NYSE_TAQ       0  
1           0.02             USD             6711  NYSE_TAQ       0  
2           0.02             USD             4338  NYSE_TAQ       0  
3           0.01             USD             2813  NYSE_TAQ       0  
4           0.01             USD             3545  NYSE_TAQ       0  
..           ...             ...              ...       ...     ...  
385         0.01             USD            13079  NYSE_TAQ       0  
386         0.01             USD             9070  NYSE_TAQ       0  
387         0.01             USD            11637  NYSE_TAQ       0  
388         0.01             USD             6922  NYSE_TAQ       0  
389         0.01             USD            13240  NYSE_TAQ       0  

[390 rows x 35 columns]
```
