Example #1
0
 def test_vix_expiry(self):
     sec = cont.SecurityDefinition()
     fut = sec.get_next_expiry('VX', datetime.date(2017, 11, 14))
     print(fut)
     self.assertEqual(fut, 'VXX7')
     fut = sec.get_next_expiry('VX', datetime.date(2017, 11, 15))
     print(fut)
     self.assertEqual(fut, 'VXZ7')
     futures = sec.get_futures('VX', 3, datetime.date(2017, 11, 2))
     print(futures)
     self.assertEqual(futures, ['VXX7', 'VXZ7', 'VXF8'])
     futures = sec.get_futures('VX', 2, datetime.date(2017, 11, 2))
     print(futures)
     self.assertEqual(futures, ['VXX7', 'VXZ7'])
     futures = sec.get_futures('VX', 2, datetime.date(2017, 11, 15))
     print(futures)
     self.assertEqual(futures, ['VXZ7', 'VXF8'])
     futures = sec.get_futures('VX', 3, datetime.date(2017, 12, 19))
     print(futures)
     self.assertEqual(futures, ['VXZ7', 'VXF8', 'VXG8'])
     futures = sec.get_futures('VX', 2, datetime.date(2017, 12, 20))
     print(futures)
     self.assertEqual(futures, ['VXF8', 'VXG8'])
     futures = sec.get_futures('VX', 3, datetime.date(2018, 1, 10))
     print(futures)
     self.assertEqual(futures, ['VXF8', 'VXG8', 'VXH8'])
Example #2
0
 def __init__(self, params):
     self.secDef = contracts.SecurityDefinition()
     self.Email = params.Email
     self.Iam = params.Iam
     self.User = params.User
     self.Password = params.Password
     self.Smtp = params.Smtp
     self.Logger = logging.getLogger()
     self.Logger.setLevel(logging.INFO)
     ec2 = boto3.resource('ec2', region_name=params.Region)
     self.__Instance = ec2.Instance(params.Instance)
     db = boto3.resource('dynamodb', region_name=params.Region)
     self.__QuotesEod = db.Table('Quotes.EOD')
     self.__Securities = db.Table('Securities')
     self.__Orders = db.Table('Orders')
     s3 = boto3.resource('s3')
     debug = os.environ['DEBUG_FOLDER']
     self.__debug = s3.Object(debug, 'vix_roll.txt')
     logging.basicConfig(
         format='%(asctime)s - %(levelname)s - %(threadName)s - %(message)s'
     )
     self.Logger.info(
         'InstanceController Created. Region: %s Instance: %s' %
         (params.Region, params.Instance))
Example #3
0
 def test_one_day_after(self):
     today = datetime.date(2017, 11, 16)
     sec = cont.SecurityDefinition()
     expiry = sec.get_vix_expiry_date(today)
     print(expiry - relativedelta(days=+1))
     self.assertGreater(today, expiry - relativedelta(days=+1))