- Separate getting option chains from recording
- Add checking for market open - Remove SPX from recording - Hopefully precent the refresh token from being overwritten sometimes
This commit is contained in:
52
getMarketHours.sh
Executable file
52
getMarketHours.sh
Executable file
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
#set -x
|
||||
set -e
|
||||
mkdir -p temp
|
||||
|
||||
ErrorLogLevel=err
|
||||
#Handle additional commandline parameters
|
||||
if [[ $1 == -* ]]; then
|
||||
if [[ $1 == "-ErrorAsWarning" ]]; then
|
||||
ErrorLogLevel=warning
|
||||
shift
|
||||
fi
|
||||
fi
|
||||
|
||||
markets=""
|
||||
if [[ ! -z $1 ]]; then
|
||||
markets=$1
|
||||
shift
|
||||
fi
|
||||
|
||||
if [[ -z "${markets}" ]]; then
|
||||
markets="equity&markets=option&markets=bond&markets=future&markets=forex"
|
||||
fi
|
||||
|
||||
queryString="?markets=${markets}"
|
||||
|
||||
while [[ $# -gt 0 ]]; do
|
||||
queryString="${queryString}&$1=$2"
|
||||
shift; shift
|
||||
done
|
||||
|
||||
msg="Querying for markets: _${markets}_ query string: _${queryString}_"
|
||||
systemd-cat -t "`basename $0` $1" -p debug <<< ${msg}
|
||||
|
||||
curl -s -X GET "https://api.schwabapi.com/marketdata/v1/markets${queryString}" \
|
||||
-H "Authorization: Bearer $(<access_token.dat)" > temp/markets.tmp.$$.json
|
||||
|
||||
|
||||
marketsCheck=$(jq -e -r '.. | .isOpen?' temp/markets.tmp.$$.json | grep -v null | wc -l)
|
||||
if [[ ${marketsCheck} -eq 0 ]]; then
|
||||
errMsg="ERROR: THE RESPONSE IS INCORRECT! markets: _${markets}_ Check: _${marketsCheck}_ check file _temp/markets.tmp.$$.json_"
|
||||
systemd-cat -t "`basename $0` $1" -p ${ErrorLogLevel} <<< ${errMsg}
|
||||
if [[ "${ErrorLogLevel}" == "err" ]]; then
|
||||
>&2 echo "${errMsg}"
|
||||
fi
|
||||
exit 2
|
||||
else
|
||||
jq < temp/markets.tmp.$$.json
|
||||
rm temp/markets.tmp.$$.json
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user