def transaction(username, volume, company, trans_type, algo_id): udao1 = User_stock_value_dao() udao2 = User_portfolio_dao() cdao = Company_dao() tdao = Transaction_dao() hdao = History_dao() c = cdao.get_company_model(company) ask = Decimal(c.get_ask()) #time = datetime.datetime.utcnow() final = calculate_price(ask, volume) if trans_type == 'buy': u = udao2.get_user_portfolio_model(username) if final <= u.get_available_funds(): tdao.buy(username, company, volume, ask, algo_id) hdao.insert(username, 'buy', company, ask, final, volume, algo_id) o = tdao.get_user_stock_value_model(username) if o.get_total_stock_values(): udao1.update_total_stock_values(username, o.get_total_stock_values()) if o.get_profit(): udao1.update_profit(username, o.get_profit()) up = udao2.get_user_portfolio_model(username) udao2.update_available_funds( username, Decimal(up.get_available_funds()) - final) elif trans_type == 'sell': o = tdao.get_owned_stock_model(username, company, ask) if o.get_volume() >= volume: tdao.sell(username, company, volume, ask, algo_id) hdao.insert(username, 'sell', company, ask, final, volume, algo_id) u = tdao.get_user_stock_value_model(username) udao1.update_total_stock_values(username, u.get_total_stock_values()) udao1.update_profit(username, u.get_profit()) portfolio = udao2.get_user_portfolio_model(username) udao2.update_available_funds( username, Decimal(final) + Decimal(portfolio.get_available_funds())) udao2.update_total_portfolio( username, Decimal(final) + Decimal(portfolio.get_available_funds()) + Decimal(u.get_total_stock_values()))
def transaction(username, volume, company, trans_type, algo_id): udao1 = User_stock_value_dao() udao2 = User_portfolio_dao() cdao = Company_dao() tdao = Transaction_dao() hdao = History_dao() c = cdao.get_company_model(company) ask = Decimal(c.get_ask()) #time = datetime.datetime.utcnow() final = calculate_price(ask, volume) if trans_type == 'buy': u = udao2.get_user_portfolio_model(username) if final <= u.get_available_funds(): tdao.buy(username, company, volume, ask, algo_id) hdao.insert(username, 'buy', company, ask, final, volume, algo_id) o = tdao.get_user_stock_value_model(username) if o.get_total_stock_values(): udao1.update_total_stock_values(username, o.get_total_stock_values()) if o.get_profit(): udao1.update_profit(username, o.get_profit()) up = udao2.get_user_portfolio_model(username) udao2.update_available_funds(username, Decimal(up.get_available_funds()) - final) elif trans_type == 'sell': o = tdao.get_owned_stock_model(username, company, ask) if o.get_volume() >= volume: tdao.sell(username, company, volume, ask, algo_id) hdao.insert(username, 'sell', company, ask, final, volume, algo_id) u = tdao.get_user_stock_value_model(username) udao1.update_total_stock_values(username, u.get_total_stock_values()) udao1.update_profit(username, u.get_profit()) portfolio = udao2.get_user_portfolio_model(username) udao2.update_available_funds(username, Decimal(final) + Decimal(portfolio.get_available_funds())) udao2.update_total_portfolio(username, Decimal(final) + Decimal(portfolio.get_available_funds()) + Decimal(u.get_total_stock_values()))
sorted_volume[j - 1] = sorted_volume[j] sorted_volume[j] = temp j = j - 1 MAX = 35 for i in range(length): if (i >= MAX): break if (sorted_volume[i][0] == 'Other'): continue sectors.append(sorted_volume[i][0]) volume.append(sorted_volume[i][1]) data['chart_axis'] = sectors data['chart_data'] = volume #--------------------------------end of code for chart--------------------# up = u1.get_user_portfolio_model(username) usv = u2.get_user_stock_value_model(username) data['users'] = {} if up: data['users']['total_portfolio'] = up.get_total_portfolio() data['users']['total_deposited'] = up.get_total_deposited() data['users']['available_funds'] = up.get_available_funds() else: data['users']['total_portfolio'] = 0 data['users']['total_deposited'] = 0 data['users']['available_funds'] = 0 if usv: data['users']['total_stock_values'] = usv.get_total_stock_values() data['users']['profit'] = usv.get_profit()
sorted_volume[j]=temp j=j-1 MAX=35 for i in range(length): if(i>=MAX):break; if(sorted_volume[i][0]=='Other'):continue sectors.append(sorted_volume[i][0]) volume.append(sorted_volume[i][1]) data['chart_axis']=sectors; data['chart_data']=volume; #--------------------------------end of code for chart--------------------# up = u1.get_user_portfolio_model(username) usv = u2.get_user_stock_value_model(username) data['users']={} if up: data['users']['total_portfolio'] = up.get_total_portfolio() data['users']['total_deposited'] = up.get_total_deposited() data['users']['available_funds'] = up.get_available_funds() else: data['users']['total_portfolio'] = 0 data['users']['total_deposited'] = 0 data['users']['available_funds'] = 0 if usv: data['users']['total_stock_values'] = usv.get_total_stock_values() data['users']['profit'] = usv.get_profit()
import cgi, sys, LINK_HEADERS import simplejson as json sys.path.insert(0, str(LINK_HEADERS.MODELS_LINK)) sys.path.insert(0, str(LINK_HEADERS.DAO_LINK)) from decimal import * from user_portfolio_dao import User_portfolio_dao print "Content-Type: text/html\r\n\r\n" form = cgi.FieldStorage() if form.getvalue("username") != None: username = form.getvalue("username") if form.getvalue("amount") != None: amount = form.getvalue("amount") #username='******' #amount='1000000' udao = User_portfolio_dao() u = udao.get_user_portfolio_model(username) final_deposited = Decimal(u.get_total_deposited()) + Decimal(amount) final_portfolio = Decimal(u.get_total_portfolio()) + Decimal(amount) final_available = Decimal(u.get_available_funds()) + Decimal(amount) udao.update_total_deposited(username, final_deposited) udao.update_total_portfolio(username, final_portfolio) udao.update_available_funds(username, final_available)
import cgi, sys, LINK_HEADERS import simplejson as json sys.path.insert(0, str(LINK_HEADERS.MODELS_LINK)) sys.path.insert(0, str(LINK_HEADERS.DAO_LINK)) from decimal import * from user_portfolio_dao import User_portfolio_dao print "Content-Type: text/html\r\n\r\n" form = cgi.FieldStorage() if form.getvalue("username") != None: username = form.getvalue("username") if form.getvalue("amount") != None: amount = form.getvalue("amount") #username='******' #amount='1000000' udao = User_portfolio_dao() u = udao.get_user_portfolio_model(username) final_deposited = Decimal(u.get_total_deposited()) + Decimal(amount) final_portfolio = Decimal(u.get_total_portfolio()) + Decimal(amount) final_available = Decimal(u.get_available_funds()) + Decimal(amount) udao.update_total_deposited(username, final_deposited) udao.update_total_portfolio(username, final_portfolio) udao.update_available_funds(username, final_available)