Posts

USDONE Launching Stabilization Mining on 1 July 2020

avatar of @usdone
25
@usdone
·
0 views
·
3 min read

USDONE was introduced in April 2019. The launch Post describing the details and objective is USDONE : Combines Stability and Earning in One Token.

We have been continuously distributing dividends and posting audit reports on monthly basis. Due to Steem and Hive epic episode - we had stopped our dividends distribution and preferred to wait as advised in -We are waiting.

Although some issues still remain but most services are now up and running smoothly. Our Decision is still to remain on Steem blockchain.

We will distribute all pending dividends at the end of this month. Your funds are safe.

Stabilization Mining

But this post is about entirely new concept in crypto space with respect to stable coins and that is Stabilization Mining. We had posted about our concept USDONE Stabilization Rewards Proposal on 2 May 2019. We did not receive many comments on the concept as well as we did not see any such concept emerge in stable coins yet. We believe this is a unique concept and has significant edge over most stable coins. Therefore, We have decided to go ahead with our proposal and are opening the Stability Mining for USDONE starting 1 July 2020.

The formula to compute the stabilization mining rewards (SMR) is : SMR= MSRP x ndfp x quantity / 100

where : MSRP is maximum stability reward percent
ndfp normal distribution function probability quantity is traded volume

Please refer to original post for more details. In the beginning we will distribute mining rewards on monthly basis and as activity picks up we will do weekly or daily.

Stability Miner Code

As mentioned in our concept post - miners can use bot to do mining. We have developed the Python code that miners can use. We also invite community members to develop more user friendly UI based miners. We will support such ideas. Below is our code:

import time 
import random 
from beem import Steem 
from beem.market import Market 
from steemengine.wallet import Wallet 
from beem.nodelist import NodeList 
def bidaskpricethresholdfunctionSteem(): 
	stm = Steem() 
	mkt = Market("STEEM:SBD", steem_instance=stm) 
	steempriceinUSD = mkt.steem_usd_implied() 
	print("_____________________________________________________________________") 
	print("Steem Price in USD  ",steempriceinUSD) 
	print("_____________________________________________________________________") 
	minaskpricebyUSDONE = 1.0 <em> (1 / steempriceinUSD)  ##1.05 
	minbidpricebyUSDONE = 1.0 </em> (1 / steempriceinUSD)  ##/0.95 
	minaskpricebyUSDONE = round(minaskpricebyUSDONE, 2) 
	minbidpricebyUSDONE = round(minbidpricebyUSDONE, 2) 
	return minaskpricebyUSDONE, minbidpricebyUSDONE 
def bidaskpricethresholdfunction(symbol): 
	minaskpricebyUSDONE, minbidpricebyUSDONE= bidaskpricethresholdfunctionSteem() 
	sign = 1 
	if random.randint(0, 1) == 0: 
		sign = -1 
	minbidpricebyUSDONE = minbidpricebyUSDONE - sign <em> random.randint(0, 3) / 100 
	minaskpricebyUSDONE = minaskpricebyUSDONE + sign </em> random.randint(0, 3) / 100 
 
	minaskpricebyUSDONE = round(minaskpricebyUSDONE, 5) 
	minbidpricebyUSDONE = round(minbidpricebyUSDONE, 5) 
 
	print("_____________________________________________________________________") 
	print("Asset  :", symbol) 
	return minaskpricebyUSDONE,minbidpricebyUSDONE 
def OrderFunction(inputdata): 
	nodelist = NodeList() 
	nodelist.update_nodes() 
	nodes = nodelist.get_steem_nodes() 
	qty=inputdata[0] 
	symbol = inputdata[1] 
	user=inputdata[2] 
	key = inputdata[3] 
	minaskpricebyUSDONE, minbidpricebyUSDONE = bidaskpricethresholdfunctionSteem() 
 
	from steemengine.market import Market 
	stm = Steem(keys=[key],nodes=[nodes]) 
	m = Market(steem_instance=stm) 
 
	open_buy_orders = m.get_buy_book(symbol, user) 
	open_sell_orders = m.get_sell_book(symbol, user) 
 
	cancelbuy=0 
	cancelsell=0 
	for buyorder in open_buy_orders: 
		if abs(float(buyorder["price"]) - minbidpricebyUSDONE)/minbidpricebyUSDONE > 0.005: 
			trxid = buyorder["txId"] 
			print("Buy Order price", buyorder["price"]) 
			print("Cancel Buy Order ", trxid) 
			try: 
				m.cancel(user, "buy", trxid) 
				time.sleep(3) 
				cancelbuy=1 
			except: 
				x=1 
	for sellorder in open_sell_orders: 
		if abs(float(sellorder["price"]) - minaskpricebyUSDONE)/minaskpricebyUSDONE > 0.005: 
			trxid = sellorder["txId"] 
			print("Sell Order price", sellorder["price"]) 
			print("Cancel Sell Order ", trxid) 
			try: 
				m.cancel(user, "sell", trxid) 
				time.sleep(3) 
				cancelsell=1 
			except: 
				x=1 
 
	buybook=m.get_buy_book(symbol) 
	start=0 
	for buyo in buybook: 
		if start==0: 
			buyhp=float(buyo['price']) 
			start=1 
		else: 
			buyp = float(buyo['price']) 
			if buyhp<buyp: 
				buyhp=buyp 
 
	sellbook=m.get_sell_book(symbol) 
	start = 0 
	for sello in sellbook: 
		if start == 0: 
			sellhp=float(sello['price']) 
			start = 1 
		else: 
			sellp = float(sello['price']) 
			if sellhp > sellp: 
				sellhp = sellp 
 
 
	minaskpricebyUSDONE, minbidpricebyUSDONE = bidaskpricethresholdfunction(symbol) 
 
	print("Modified BidPrice   :   ", minbidpricebyUSDONE) 
	print("Modified AskPrice   :   ", minaskpricebyUSDONE) 
 
	wallet = Wallet(user) 
	usdoneBalance=0 
	steempBalance=0 
	for acc in wallet: 
		if acc["symbol"] == "USDONE": 
			usdoneBalance = float(acc["balance"]) 
		if acc["symbol"] == "STEEMP": 
			steempBalance = float(acc["balance"]) 
	print("user,usdoneBalance, steempBalance") 
	print(user,usdoneBalance, steempBalance) 
	if (cancelbuy==0 and steempBalance>qty*minbidpricebyUSDONE): 
		try: 
			buyorderCreatefunction(user, symbol, qty, minbidpricebyUSDONE, key,nodes) 
			time.sleep(6) 
		except: 
			x=1 
	if (cancelsell==0 and usdoneBalance>1): 
		try: 
			sellorderCreatefunction(user, symbol,qty, minaskpricebyUSDONE, key,nodes) 
			time.sleep(6) 
		except: 
			x=1 
def buyorderCreatefunction(user,symbol,qty,price,key,nodes): 
	print("Buying ", qty, " for   :", user, " @price ", price) 
	from steemengine.market import Market 
	stm = Steem(keys=[key],nodes=[nodes]) 
	m = Market(steem_instance=stm) 
	try: 
		m.buy(user, qty, symbol, price) 
	except: 
		x=1 
def sellorderCreatefunction(user,symbol,qty,price,key,nodes): 
	print("Selling ", qty," for   :", user, " @price ", price) 
	from steemengine.market import Market 
	stm = Steem(keys=[key],nodes=[nodes]) 
	m = Market(steem_instance=stm) 
	try: 
		m.sell(user, qty, symbol, price) 
	except: 
		x=1 
 
qty=5   # qty for buy and sell 
inputdata=[qty,"USDONE","user",'activekey']  
OrderFunction(inputdata)  

With this we hope to serve the need of a stable coin supported by users through Stabilization Rewards Mechanism.

Links

Steem Engine for USDONE Steem Wallet for USDONE Ethereum Wallet for USDONE Tron Wallet for USDONE USDONE : Combines Stability and Earning in One Token