Skip to content

Instantly share code, notes, and snippets.

@raposatech
Created December 8, 2021 18:24
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save raposatech/d82a7bee3bb780ff4a29d776f69b4508 to your computer and use it in GitHub Desktop.
Save raposatech/d82a7bee3bb780ff4a29d776f69b4508 to your computer and use it in GitHub Desktop.
Run Starter System with Alpaca
from argparse import ArgumentParser
from decouple import config
from starter_system import AlpacaStarterSystem
# Import Keys
KEY = config('ALPACA_PAPER_API_KEY')
SECRET = config('ALPACA_PAPER_SECRET')
URL = config('ALPACA_PAPER_URL')
sig_dict = {
'MAC' : {
0: {'fast': 8, 'slow': 32, 'scale': 8.384},
1: {'fast': 16, 'slow': 64, 'scale': 5.712},
2: {'fast': 32, 'slow': 128, 'scale': 3.824},
3: {'fast': 64, 'slow': 256, 'scale': 2.528}
},
'MBO': {
0: {'N': 20, 'scale': 3.16},
1: {'N': 40, 'scale': 3.27},
2: {'N': 80, 'scale': 3.35},
3: {'N': 160, 'scale': 3.35},
4: {'N': 320, 'scale': 3.35}
},
'CAR': {
0: {'status': True, 'scale': 3}
}
}
def parseArgs():
parser = ArgumentParser()
parser.add_argument("-sh", "--shorts", default=True)
parser.add_argument("-t", "--tickers")
parser.add_argument("-tr", "--target_risk", default=0.12)
parser.add_argument("-c", "--capital", default=10000)
parser.add_argument("-m", "--margin_cost", default=0.04)
parser.add_argument("-sc", "--short_cost", default=0.001)
parser.add_argument("-iob", "--interest_on_balance", default=0)
parser.add_argument("-maxf", "--max_forecast", default=2)
parser.add_argument("-minf", "--min_forecast", default=-2)
parser.add_argument("-d", "--exposure_drift", default=0.1)
parser.add_argument("-bt", "--backtest", default=False)
parser.add_argument("-sv", "--save", default=True)
return parser.parse_args()
def main():
args = parseArgs()
sys = AlpacaStarterSystem(args.tickers, sig_dict, base_url=URL)
sys.alpacaInit(KEY, SECRET)
sys.trade()
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment