Skip to content

Commit

Permalink
Bug with Binance not trading the proper amount is fixed.
Browse files Browse the repository at this point in the history
Version update.

Changes to be committed:
	modified:   Base/CCXT-PlaceOrder.spot
	modified:   Base/JackrabbitLocker
	modified:   Base/JackrabbitOliverTwist
	modified:   Base/JackrabbitRelay
	modified:   Base/Library/JRRccxt.py
	modified:   Base/Library/JRRmimic.py
	modified:   Base/Library/JackrabbitProxy.py
	modified:   Base/Library/JackrabbitRelay.py
	modified:   Extras/CodeProofs/findMinCost
  • Loading branch information
rapmd73 committed Oct 15, 2024
1 parent 512879f commit ae04cdc
Show file tree
Hide file tree
Showing 9 changed files with 22 additions and 21 deletions.
1 change: 1 addition & 0 deletions Base/CCXT-PlaceOrder.spot
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import sys
sys.path.append('/home/JackrabbitRelay2/Base/Library')
import os
import math
import json

import JRRsupport
Expand Down
2 changes: 1 addition & 1 deletion Base/JackrabbitLocker
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import json

import JRRsupport

Version="0.0.0.1.995"
Version="0.0.0.1.1000"
BaseDirectory='/home/JackrabbitRelay2/Base'
ConfigDirectory='/home/JackrabbitRelay2/Config'
LogDirectory="/home/JackrabbitRelay2/Logs"
Expand Down
2 changes: 1 addition & 1 deletion Base/JackrabbitOliverTwist
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ import subprocess
import JRRsupport
import JackrabbitRelay as JRR

Version="0.0.0.1.995"
Version="0.0.0.1.1000"
BaseDirectory='/home/JackrabbitRelay2/Base'
DataDirectory='/home/JackrabbitRelay2/Data'
ConfigDirectory='/home/JackrabbitRelay2/Config'
Expand Down
2 changes: 1 addition & 1 deletion Base/JackrabbitRelay
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import json

import JRRsupport

Version="0.0.0.1.995"
Version="0.0.0.1.1000"
BaseDirectory='/home/JackrabbitRelay2/Base'
ConfigDirectory='/home/JackrabbitRelay2/Config'
LogDirectory="/home/JackrabbitRelay2/Logs"
Expand Down
27 changes: 13 additions & 14 deletions Base/Library/JRRccxt.py
Original file line number Diff line number Diff line change
Expand Up @@ -436,9 +436,7 @@ def PlaceOrder(self,**kwargs):
params['reduce_only']=ro

if 'binance' in self.Broker.id:
params['quoteOrderQty']=amount
# else:
# amount=float(amount)
params['quoteOrderQty']=amount*price

# Pure market orders break (phemex) when price in included.
if m=='market' and "createMarketBuyOrderRequiresPrice" not in self.Broker.options:
Expand Down Expand Up @@ -490,24 +488,25 @@ def GetMinimum(self,**kwargs):

if diagnostics:
self.Log.Write("Minimum asset analysis")
self.Log.Write("|- Base: "+base)
# self.Log.Write("|- Base: "+base)
self.Log.Write(f"| |- Minimum: {minimum:.8f}")
self.Log.Write(f"| |- Min Cost: {mincost:.8f}")

# If quote is NOT USD/Stablecoin. NOTE: This is an API penalty
# for the overhead of pulling quote currency. Quote currency
# OVERRIDES base ALWAYS.

self.Log.Write("|- Quote: "+quote)
# self.Log.Write("|- Quote: "+quote)

if quote not in self.StableCoinUSD or forceQuote:
bpair=self.FindMatchingPair(quote)
if bpair!=None:
minimum,mincost=self.GetAssetMinimum(bpair,diagnostics)
# if quote not in self.StableCoinUSD or forceQuote:
# bpair=self.FindMatchingPair(quote)
# if bpair!=None:
# minimum,mincost=self.GetAssetMinimum(bpair,diagnostics)

if diagnostics:
self.Log.Write(f"| |- Minimum: {minimum:.8f}")
self.Log.Write(f"| |- Min Cost: {mincost:.8f}")
# if diagnostics:
# self.Log.Write("|- Quote: "+quote)
# self.Log.Write(f"| |- Minimum: {minimum:.8f}")
# self.Log.Write(f"| |- Min Cost: {mincost:.8f}")

if minimum==0.0:
self.Log.Error("Asset Analysis","minimum position size returned as 0")
Expand All @@ -525,7 +524,7 @@ def GetAssetMinimum(self,pair,diagnostics):

# This is the lowest accepted price of market order

close=ticker['Ask']
close=max(ticker['Ask'],ticker['Bid'])

# Check if there is an overide in place

Expand Down Expand Up @@ -579,7 +578,7 @@ def GetAssetMinimum(self,pair,diagnostics):
minimum=float('0.'+str(z[:factor-1])+'1')
mincost=minimum*close

if 'binance' in self.Broker.id:
if 'binance' in exchangeName: # self.Broker.id:
mincost+=0.3
minimum=mincost/close

Expand Down
2 changes: 1 addition & 1 deletion Base/Library/JRRmimic.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ class mimic:
# placed in init and released at exit.

def __init__(self,Exchange,Config,Active,DataDirectory=None):
self.Version="0.0.0.1.995"
self.Version="0.0.0.1.1000"

self.StableCoinUSD=['USDT','USDC','BUSD','UST','DAI','FRAX','TUSD', \
'USDP','LUSD','USDN','HUSD','FEI','TRIBE','RSR','OUSD','XSGD', \
Expand Down
2 changes: 1 addition & 1 deletion Base/Library/JackrabbitProxy.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
class JackrabbitProxy:
def __init__(self,framework=None,payload=None,exchange=None,account=None,asset=None,Usage=None):
# All the default locations
self.Version="0.0.0.1.995"
self.Version="0.0.0.1.1000"
self.BaseDirectory='/home/JackrabbitRelay2/Base'
self.ConfigDirectory='/home/JackrabbitRelay2/Config'
self.DataDirectory="/home/JackrabbitRelay2/Data"
Expand Down
2 changes: 1 addition & 1 deletion Base/Library/JackrabbitRelay.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ def Success(self,f,s):
class JackrabbitRelay:
def __init__(self,framework=None,payload=None,exchange=None,account=None,asset=None,secondary=None,NoIdentityVerification=False,Usage=None,RaiseError=False):
# All the default locations
self.Version="0.0.0.1.995"
self.Version="0.0.0.1.1000"
self.NOhtml='<html><title>NO!</title><body style="background-color:#ffff00;display:flex;weight:100vw;height:100vh;align-items:center;justify-content:center"><h1 style="color:#ff0000;font-weight:1000;font-size:10rem">NO!</h1></body></html>'
self.Directories={}
self.Directories['Base']='/home/JackrabbitRelay2/Base'
Expand Down
3 changes: 2 additions & 1 deletion Extras/CodeProofs/findMinCost
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,9 @@ else:
print("An exchange, (sub)account, and an asset must be provided.")
sys.exit(1)

print(relay.Markets[asset]['precision'])
minimum,mincost=relay.GetMinimum(symbol=asset)

print(f"Minimum Amount/Units: {minimum:16.8f}")
print(f"Minimum Cost: {mincost:16.8f}")
print(f"Minimum Cost: {mincost:16.8f}")

0 comments on commit ae04cdc

Please sign in to comment.