def issue_token(self, total_amount, issue_amount): self.push_action( 'eosio.token', 'create', "'[ \"eosio\", \"%s\", 0, 0, 0]' -p eosio.token" % Asset(total_amount)) self.push_action( 'eosio.token', 'issue', "'[ \"eosio\", \"%s\", \"memo\" ]' -p eosio" % Asset(issue_amount))
def get_metals(): return \ [ Asset(icon="icons/32x32/equitrader.png", name="Copper", ticker="HG:CMX", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/expanse.png", name="Silver", ticker="XAG", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/eztoken.png", name="Gold", ticker="GC:CMX", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/hycon.png", name="Aluminium", ticker="ALI:CMX", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), ]
def post_sys_create(self, a, net, cpu, ram, creator='eosio'): cmd = self.teclos + ' --url %s system newaccount %s --transfer %s %s --stake-net \"%s\" --stake-cpu \"%s\" --buy-ram \"%s\"' net = Asset(net) cpu = Asset(cpu) ram = Asset(ram) run_retry(cmd % (self.host_address, creator, a.name, a.keypair.public, net, cpu, ram)) a.amount += cpu + net + ram
def create_tip5_wallets_from_snapshot(self, path_to_csv, contract_account, min_tokens, max_tokens): try: with open(path_to_csv, 'r', newline='') as csvfile: reader = csv.DictReader(csvfile) for row in reader: amt = randint(min_tokens, max_tokens) self.create_allotment_tip5(contract_account, row['account_name'], Asset(amt, 'TTT', 2).__str__()) self.transferfrom_tip5(contract_account, row['account_name'], Asset(amt, 'TTT', 2).__str__()) except Exception as e: raise e
def register_airtable(): app.logger.info("register_airtable(): POST /register_airtable") app.logger.debug(f"{request.form=}") posted_asset = request.form.to_dict() if posted_asset: registrable_asset = Asset( title=posted_asset["title"], asin=posted_asset["asin"], url=posted_asset["url"], images=[{"url": posted_asset["image_url"]}], manufacture=posted_asset["manufacturer"], contributor=posted_asset["contributors"], product_group=posted_asset["product_group"], publication_date=0 if posted_asset["publication_date"] else 0, features=posted_asset["features"], default_position=posted_asset["default_positions"], current_position=posted_asset["current_positions"], note=posted_asset["note"], registrant_name=posted_asset["registrants_name"]) AirtableClient().register_asset(registrable_asset) app.logger.info(f"Registration completed! {registrable_asset=}") return FlashMessage.show_with_redirect("Registration completed!", FlashCategories.INFO, url_for("index")) else: context_dict = { "product": session.get("asset", "") } app.logger.debug(f"{context_dict}=") return FlashMessage.show_with_render_template("Registration failed.", FlashCategories.ERROR, "registration.html", **context_dict)
def calcIDAdjustment(Corp, eta=0.4): """ Calculates the adjustment factors for the corporate and noncorporate debt and interest. eta: retirement rate of existing debt """ # Create Asset object asset1 = Asset(data1.btax_defaults, Corp) asset1.calc_all() # Get asset forecast forecast = asset1.get_forecast() # Create Debt object debt1 = Debt(data1.btax_defaults, forecast, corp=Corp) debt1.calc_all() # Get unscaled net interest deduction NID_gross = debt1.NID[38:54] # Get net interest deduction from historical IRS data if Corp: NID_irs = np.array(data1.debt_data_corp['NID_IRS'])[38:54] else: NID_irs = np.array(data1.debt_data_noncorp['ID_Scorp'][38:54] + data1.debt_data_noncorp['ID_sp'][38:54] + data1.debt_data_noncorp['ID_partner'][38:54]) NID_scale = sum(NID_irs / NID_gross) / 16. return NID_scale
def load_assets (factors, data_path): """loads all factors files for all files that have close prices factors - list of string """ assets_dict={} asset = None #load close prices for file in os.listdir(data_path+'close'): if(file.endswith('.csv')): file_path = os.path.join(data_path+'close', file) file_name=os.path.splitext(file)[0] if((os.stat(file_path).st_size != 0)): asset=Asset(file_name) assets_dict[file_name]=asset add_factor(asset, file_path, 'close') #load factors from factors list for factor_name in factors: for file in os.listdir(data_path+factor_name): if(file.endswith('.csv')): file_path = os.path.join(data_path+factor_name, file) file_name=os.path.splitext(file)[0] if(file_name in assets_dict): asset=assets_dict[file_name] add_factor(asset, file_path, factor_name) assets_list=list(assets_dict.values()) assets_list.sort(key=custom_key,reverse=False) return assets_list
def create_portfolio(data): print("CREATING PORTFOLIO") pf = Portfolio() for index, row in data.iterrows(): ticker = row['Verdipapir'] amount = float(row['Antall'].replace(',', '.').replace(' ', '')) kurs = float(row['Kurs'].replace(',', '.').replace(' ', '')) vekslingskurs = float(row['Vekslingskurs'].replace(',', '.').replace( ' ', '')) transaksjonstype = row['Transaksjonstype'] belop = float(row['Beløb'].replace(',', '.').replace(' ', '')) # Deposit and withdraw cash if transaksjonstype == 'INNSKUDD' or transaksjonstype == 'UTTAK INTERNET': if transaksjonstype == 'INNSKUDD': pf.deposit(belop) if transaksjonstype == 'UTTAK INTERNET': pf.withdraw(belop) if transaksjonstype == 'KJØPT' or transaksjonstype == 'SALG': a = Asset(ticker) pf.buy(a, amount, (kurs * vekslingskurs)) if belop < 0 else pf.sell( a, amount, (kurs * vekslingskurs)) return pf
def load_a_layer(self, day, df_inc): layer_assets_1 = ['120000053', '120000056','120000058','120000073'] layer_assets_2 = ['MZ.FA0010', 'MZ.FA0050','MZ.FA0070'] layer_assets = layer_assets_1 + layer_assets_2 layer_assets = dict([(asset_id , Asset(asset_id)) for asset_id in layer_assets]) layer_bounds = {} for asset in layer_assets.keys(): layer_bounds[asset] = self.bound[asset] rp_allocate = RpAllocate('ALC.000001', layer_assets, self.index, self.lookback, bound = layer_bounds) layer_ws, df_alayer_inc = rp_allocate.allocate_day(day) df_inc['ALayer'] = df_alayer_inc df_inc_layer = df_inc[df_inc.columns.difference(layer_assets)] bound = [] allocate_asset_ids = [] for asset_id in df_inc_layer.columns: asset_bound = AssetBound.get_asset_day_bound(asset_id, day, self.bound).to_dict() if asset_bound['upper'] > 0: bound.append(asset_bound) # allocate_asset_ids.append(asset_id) return df_inc_layer, layer_ws, bound
def main(): # Sanity checks # asset = Asset(0) # l = Loan(12, 0.01, 10000, asset) # for i in range(12): # print l.interestDue(i), l.principalDue(i), l.balance(i) # vl = VariableRateLoan(12, 0.01, 10000, {0: 0.023, 5: 0.03, 10: 0.04}, asset) # handle the TypeError and log it try: l = Loan(12, 0.01, 10000, 'wrong asset') except TypeError: logging.exception( "TypeError is caught when trying to create a Loan type.") # tests for 4.2.4 asset = Asset(20000) l = Loan(20, 0.02, 10000, asset) print "*** DEBUG level ***" logging.basicConfig(level=logging.DEBUG) l.balance(-1) # should trigger one info log and one warn log print "*** ERROR level ***" logging.basicConfig(level=logging.ERROR) l.balance(-1) # no any log
def create_asset_objects(self): """ Pulls asset details inputted by user into budget_report_input.xlsx and creates an Asset object for each row of asset details entered. :return: List of Asset objects that correspond to input entered by user into budget_report_input.xlsx """ # Read asset details into dataframe df = pd.read_excel(self.budget_report_input_file_path, sheet_name="User Input") # Convert dataframe into dictionary # Key: "df index" # Value: ["model_num", "asset_description", "quantity", "health_auth", "site_code", "shop_code"] assets_dict = df.T.to_dict("list") # Iterate through assets_dict, create Asset object for each value, and append to assets list assets = [] for asset, details in assets_dict.items(): assets.append(Asset(details[0], # model_num details[1], # asset_description details[2], # quantity details[3], # health_auth details[4], # site_code details[5], # shop_code self.sites_cost_centre_dict)) return assets
def create_fund_account(self): a = self.account_factory.get_acc_obj('telosfundacc') self.account_factory.post_sys_create(a, (self.token_issue * 0.15) / 2, (self.token_issue * 0.15) / 2, 1000.0000) BootStrapper.transfer( self.host_address, 'eosio', a.name, Asset(1000.0000), "Sending 15 percent stake and enough money to create new accounts")
def get_currency_balance(self, account, symbol='TLOS'): try: body = {'code': 'eosio.token', 'account': account, 'symbol': symbol} response = self.api.chain.get_currency_balance(body=body, params={}, headers={}) if response.status_code == 200 and len(response.body) > 0: return Asset.string_to_asset(response.body[0]) return Asset(0, 'TTT') except ServerError as e: raise e
def _build_assets(self): """ + Description: build assets. + Input: - + Output: - """ self.assets = {} for asset_id, asset_values in self.assets_elements.items(): self.assets[asset_id] = Asset(asset_id, asset_values)
def wavelet(ctx, startdate, enddate, viewid, idx, wavenum, max_wave_num, wave_name): if idx is None: #idx = ['120000001', '120000002', '120000013', '120000014', '120000015', '120000080' ,'ERI000001', 'ERI000002'] idx = ['120000001'] for _id in idx: trade_dates = ATradeDate.trade_date() nav = Asset(_id).nav(reindex=trade_dates).fillna(method='pad').dropna() dates = nav.index[1000:] views = [] for d in dates: _tmp_nav = nav[nav.index <= d] wave_nav = wavefilter(_tmp_nav, wavenum, wname=wave_name, maxlevel=max_wave_num) inc = wave_nav.pct_change().fillna(0.0).iloc[-120:] wave_diff_rolling = wave_nav.diff().rolling(5).mean() views.append(wave_diff_rolling[-1]) #print(d, views[-1]) print(_id, d, inc.mean(), inc.std()) view_df = pd.DataFrame(views, index=dates, columns=['bl_view']) view_df[view_df > 0] = 1.0 view_df[view_df < 0] = 0 view_df.index.name = 'bl_date' view_df['globalid'] = viewid view_df['bl_index_id'] = _id view_df['created_at'] = datetime.now() view_df['updated_at'] = datetime.now() df_new = view_df.reset_index().set_index( ['globalid', 'bl_date', 'bl_index_id']) #print(df_new.head()) db = database.connection('asset') metadata = MetaData(bind=db) t = Table('ra_bl_view', metadata, autoload=True) columns = [ t.c.globalid, t.c.bl_date, t.c.bl_view, t.c.bl_index_id, t.c.created_at, t.c.updated_at, ] s = select(columns).where(t.c.globalid == viewid).where( t.c.bl_index_id == _id) df_old = pd.read_sql(s, db, index_col=['globalid', 'bl_date', 'bl_index_id'], parse_dates=['bl_date']) database.batch(db, t, df_new, df_old, timestamp=False)
def main(): print ( '========== Exercise 2.1.6 ==========') myAsset = Asset(10000) print ('Initial Value: {}'.format(myAsset.initialvalue)) print ('Monthly Depreciation: {}'.format(myAsset.monthlyDepriciation())) print ('Annual Depreciation: {}'.format(myAsset.yearlyDepreciation())) myAsset.initalvalue = 12000 print ('New Inital Value: {}'.format(myAsset.initialvalue)) print(myAsset.currentvalue(8))
def create_random_generator(self, num, min, max, base="acctname"): min = int(min) max = int(max) for _ in range(num): a = self.get_acc_obj(base + id_generator(), True) self.post_sys_create(a, randint(min, max), randint(min, max), randint(min, max)) toTransfer = Asset(randint(min, max)) BootStrapper.transfer(self.host_address, 'eosio', a.name, toTransfer, "Initial TLOS Liquid") a.amount += toTransfer yield a
def get_appreciation_curve(value, appreciation_rate, mortgage): # calculate appreciation index = mortgage.amortization appreciation_array = [] # create a time series for the amount the house appreciates for time in index: amount = (value * appreciation_rate) / 12 transfer = Asset("appreciation", "home appreciation", amount) appreciation_array.append(transfer) return pd.Series(appreciation_array, index=index, name="appreciation")
def test_asset(self): if 1: ast = TestAsset('test.asset') loc = ast.location() # self.tmpDirs = [loc] logger.info(' Created temp dir: %s', loc) ast.save() self.assertTrue(os.path.isdir(loc)) if 1: ast = Asset('test.asset') self.assertTrue(isinstance(ast, TestAsset))
def main(): a = Asset(1000) normal_loan = Loan(12, 0.3, 1000, a) memoizable_loan = MemoizedLoan(12, 0.3, 1000, a) print "First normal loan time cost:" normal_loan.interestDue(10) print "Second normal loan time cost:" normal_loan.interestDue(10) print "First memoizable loan time cost:" memoizable_loan.interestDue(10) print "Second memoizable loan time cost:" memoizable_loan.interestDue(10)
def get_portfolio(): files = [] raw_data = {} portfolio = Portfolio() for dirname, dirnames, filenames in os.walk('raw_data'): files = [os.path.join(dirname, filename) for filename in filenames] for file_name in files: # for every active with open(file_name) as csv_file: raw_data[file_name] = [] line_counter = 0 amount = Decimal(0) csv_reader = csv.reader(csv_file, delimiter=';') start_date = None end_date = None in_usd = True if file_name.startswith('raw_data/USD') else False for row in csv_reader: if line_counter == 0: line_counter += 1 elif line_counter == 1: line_counter += 1 start_date = datetime.strptime(row[0], '%m/%d/%Y') rate = Decimal(1) if in_usd else get_rate( row[0], currency_name=file_name.split('/', 1)[1].split('_', 1)[0], fake=True) amount = Decimal(row[5].replace(',', '.')) * rate raw_data[file_name].append((start_date, amount)) else: end_date = datetime.strptime(row[0], '%m/%d/%Y') rate = Decimal(1) if in_usd else get_rate( row[0], currency_name=file_name.split('/', 1)[1].split('_', 1)[0], fake=True) amount += Decimal(row[5].replace(',', '.')) * rate raw_data[file_name].append((end_date, amount)) portfolio.append( Asset(file_name, start_date, end_date, raw_data[file_name])) return portfolio
def create(spec): """Creates ImageSpec. :rtype: ImageSpec """ image_type = spec.get('imageType', 'MOSAIC') if image_type == 'MOSAIC': return _createMosaic(spec) if image_type == 'CLASSIFICATION': return Classification(spec, create) if image_type == 'CHANGE_DETECTION': return ChangeDetection(spec, create) if image_type == 'ASSET': return Asset(spec) else: raise Exception('Unexpected image image_type: ' + str(image_type))
def get_bin_options(): return \ [ Asset(icon="icons/32x32/constellation.png", name="Binary USD/JPY", ticker="USDJPY", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/consensus.png", name="Binary USD/GBP", ticker="GBPUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/chesscoin.png", name="Binary EUR/USD", ticker="EURUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/centurion.png", name="Binary USD/NZD", ticker="NZDUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/bunnycoin.png", name="Binary AUD/CHF", ticker="AUDCHF", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/callisto-network.png", name="Binary NZD/AUD", ticker="AUDNZD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), ]
def get_otc_options(): return \ [ Asset(icon="icons/32x32/coinpoker.png", name="OTC USD/JPY", ticker="USDJPY", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/cybervein.png", name="OTC USD/GBP", ticker="GBPUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/daneel.png", name="OTC EUR/USD", ticker="EURUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/deuscoin.png", name="OTC USD/NZD", ticker="NZDUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/daxxcoin.png", name="OTC AUD/CHF", ticker="AUDCHF", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), Asset(icon="icons/32x32/darsek.png", name="OTC NZD/AUD", ticker="AUDNZD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5), is_option=True), ]
def get_forex(): return \ [ Asset(icon="icons/32x32/edu-coin.png", name="USD/JPY", ticker="USDJPY", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/embers.png", name="USD/GBP", ticker="GBPUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/ejoy.png", name="EUR/USD", ticker="EURUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/egretia.png", name="USD/NZD", ticker="NZDUSD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/eaglecoin.png", name="AUD/CHF", ticker="AUDCHF", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/digital-money-bits.png", name="NZD/AUD", ticker="AUDNZD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), ]
def get_cryptos(): return \ [ Asset(icon="icons/32x32/bitcoin.png", name="Bitcoin", ticker="BTC-USD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/ethereum.png", name="Ethereum", ticker="ETH-USD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/bitcoin.png", name="Chainlink", ticker="LINK-USD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/litecoin.png", name="Litecoin", ticker="LTC-USD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/bitcoincash.png", name="Bitcoin cash", ticker="BCH-USD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/ripple.png", name="Ripple", ticker="XRP-USD", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), ]
def get_commodities(): return \ [ Asset(icon="icons/32x32/igtoken.png", name="Apple", ticker="AAPL", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/monero-classic.png", name="Adobe Systems,inc.", ticker="ADBE", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/ors-group.png", name="Nvidia LLC", ticker="NVDA", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/qwark.png", name="Dell Technologies", ticker="DELL", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/rentledger.png", name="Amazon", ticker="AMZN", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), Asset(icon="icons/32x32/reddcoin.png", name="Microsoft", ticker="MSFT", buy=r.randrange(100, 9999, 5), sell=r.randrange(100, 9999, 5)), ]
def my_form_post(): if request.method == 'POST': if request.form['serial'] != "": name = request.form['name'] serial = request.form['serial'] manufacturer = request.form['manufacturer'] print("hello") newasset = Asset(name, serial, manufacturer) message = str(newasset.get_asset_details()) return jsonify(results=message) else: text = request.form['text'] tx = asset.view_asset_by_tx(text) return jsonify(results=tx)
def boxes(self): LOGGER.info('Converting...') convert = Convert(self.pdf_path) LOGGER.info('Processing %i images...' % len(convert.images)) for image in convert.images: asset = Asset(image['path']) LOGGER.info('asset river counts, y=[%i], x=[%i]' % (len(list(asset.river_y())), len(list(asset.river_x())))) grid = GridFinder(asset) grid.process() if grid.cells: LOGGER.info('Found %s cells', len(grid.cells)) yield { 'boxes': grid.cells, 'meta': image } else: LOGGER.info('Found no cells')
def register_airtable(): app.logger.info("register_airtable(): POST /register_airtable") app.logger.debug(f"{request.form=}") posted_asset = request.form.to_dict() if request.form else {} if not posted_asset: return FlashMessage.show_with_redirect( "Registration failed. Please try the procedure again from the beginning, sorry for the inconvenience.", FlashCategories.WARNING, url_for("index")) else: registrable_asset = Asset( title=posted_asset.get("title", None), asin=posted_asset.get("asin", None), url=posted_asset.get("url", None), images=[{ "url": posted_asset.get("image_url", None) }], manufacture=posted_asset.get("manufacturer", None), contributor=posted_asset.get("contributors", None), product_group=posted_asset.get("product_group", None), publication_date=posted_asset.get("publication_date", None), features=posted_asset.get("features", None), default_position=posted_asset.get("default_positions", None), current_position=posted_asset.get("current_positions", None), note=posted_asset.get("note", None), registrant_name=posted_asset.get("registrants_name", None)) try: AirtableClient().register_asset(registrable_asset) app.logger.info(f"Registration completed! {registrable_asset=}") return FlashMessage.show_with_redirect("Registration completed!", FlashCategories.INFO, url_for("index")) except requests.exceptions.HTTPError as he: app.logger.error(he) return FlashMessage.show_with_redirect( f"Registration failed. Please try the procedure again. Error message: {he}", FlashCategories.ERROR, url_for("registration")) except TypeError as te: app.logger.error(te) return FlashMessage.show_with_redirect( f"Registration failed. Please try the procedure again. Error message: {te}", FlashCategories.ERROR, url_for("registration"))