You are viewing a single comment's thread:
Figurati! Non sai quanto mi fa piacere ricevere domande e confrontarmi con qualcuno su questi argomenti :) mi aiuta ad imparare!
Il codice seguente, se ho capito bene, crea un ordine di vendita di Hive al prezzo sell_price.
Sì, anche se, per essere più precisi, la parte a cui ti riferisci si occupa di vendere HBD al prezzo sell_price
if float(hbd) > amount:
sell_price = round(highest + diff * highest / 100, 4)
print("Looking to sell HBD...")
sell = place_sell_order(
account, sell_price, amount, market
) # Buy HIVE, sell HBD
time.sleep(3)
Mentre la parte che vende Hive (al prezzo buy_price
) è quella dopo:
if float(hive) > amount * lowest:
buy_price = round(lowest - diff * lowest / 100, 4)
print("Looking to sell HIVE...")
buy = place_buy_order(
account, buy_price, amount, market
) # Sell HIVE, buy HBD
time.sleep(3)
Se il prezzo dell'hive è più basso round(highest + diff * highest / 100, 4), viene chiamata lo stesso la funzione 'place_sell_order', ma l'ordine non viene eseguito, mentre se l'hive è maggiore di round(highest + diff * highest / 100, 4), l'ordine viene eseguito e gli hive vengono venduti (cioè convertiti in Hbd).
Qui è un po' diverso perchè la condizione che innesca la creazione o meno di un ordine è questa (nel caso di vendita di HIVE, ad esempio):
if float(hive) > amount * lowest:
Quindi, se il mio balance (float(hive) è maggiore dell'ammontare che intendo vendere (amount * lowest), allora lo script procede con la parte successiva e crea l'ordine.
Se invece il mio balance è uguale o minore, allora l'ordine non viene creato e si passa alla successiva iterazione del for loop.
Questa parte qui invece si occupa di determinare il prezzo di vendita (sempre di HIVE in questo caso):
buy_price = round(lowest - diff * lowest / 100, 4)
Per cui la logica è: verifico se ho balance sufficiente per creare un ordine con l'importo che ho scelto; se ce l'ho, calcolo il prezzo a cui voglio vendere e creo l'ordine chiamando la funzione place_buy_order(account, buy_price, amount, market)
o place_sell_order(account, buy_price, amount, market)
(che sono due funzioni della libreria beem
).
Spero di essere stato chiaro, perchè il mio codice di sicuro non lo è 🤣
Grazie mille, ma devo rifletterci perchè non mi è chiaro.
Intanto partiamo dalle base, ti chiedo: lowest e highest cosa sono? Variabili dinamiche o cablate? Il prezzo più basso e più alto dell'hive?
View more
A proposito di: if float(hive) > amount * lowest:
(vend hive per comprare hbd)
amount è la quantità di hbd (supponiamo 10) che voglio comprare. Supponiamo che 1 hbd valga 3.8 hive. quindi 10 * 3.8 = 38 hive. Devo avere almeno 38 hive per comprare 10 hbd. Ovviamente vendo gli hive quando il prezzo degli hbd è minore (lowest). Lowest per cui è conveniente comprare hbd. lowest è cablato o dinamico?
View more