##### binance script
 binance script torgny4 Unladen Swallow Posts: 2 Threads: 1 Joined: May 2020 Reputation: May-30-2020, 09:49 PM (This post was last modified: May-30-2020, 09:50 PM by torgny4.) Hi again. Thanks for input. I have recieved this as pseudo code. And I am a newbie at python this was the pseudo code: PSEUDO Code: 1) Initialize State Counter First we want a counter that counts the hours for our angle calculation. Therefore we need a counter that we can initialise in the state of the bot. At the start of the bot the counter is zero. def initialize(state): state.counter = 0 2) Define Scheduling: You could schedule your bot every hour @schedule(interval="1h", symbol="BTCUSDT”) 3) Define the Handler 1) increment the counter until it is 4 and reset: If state.counter < 4: state.counter += 1 Else: state.counter = 0 2) calculate angle if counter == 4: (every four hours) - First get your signal line: macd = data.macd(12,26,9) signalLine = macd[‘macd_signal’] - Check if bot has position has_position = has_open_position(data.symbol, truncated=True) - Calculate the angle: This can be a bit tricky here. First representing the signalLine as a straight line is only an approximation. Probably the easiest way is to calculate the slope of the last four candles and use numpy arctan to convert to the angle. Here is sample I just did which should get you started: import numpy as np def initialize(state): state.counter = 0 @schedule(interval="1h", symbol="BTCTUSD") def handler(state, data): angle = 0 macd_ind = data.macd(12,26,9) if macd_ind is None: return signal = macd_ind['macd_signal'] has_position = has_open_position(data.symbol, truncated=True) balance_base = float(query_balance_free(data.base)) balance_quoted = float(query_balance_free(data.quoted)) buy_amount = balance_quoted * 0.80 / data.close_last plot("signal",signal[-1],"BTCTUSD") if state.counter < 4: state.counter += 1 else: state.counter = 0 if state.counter == 4: lastsignals = signal[-4:] # calculating the slope of last 4 candles slope = (lastsignals[-1] - lastsignals[0]) / 3 angle = np.rad2deg(np.arctan(slope)) print("slope: ",slope) print("angle: ",angle) plot("angle of signal",angle,"BTCTUSD") if angle > 30 and balance_base Engine error: File "bot.py", line 13. > Engine error: @schedule(interval="1h",symbol="BTCUSDT”). > Engine error: ^. > Engine error: SyntaxError: EOL while scanning string literal. > File "bot.py", line 13 @schedule(interval="1h",symbol="BTCUSDT”) ^ SyntaxError: EOL while scanning string literal I will try to go through some introductionary courses in python to understand the BBCode later. I am just trying to set up a trading bot on the site trality.com Reply

 Messages In This Thread binance script - by torgny4 - May-30-2020, 05:00 PM RE: binance script - by GOTO10 - May-30-2020, 07:38 PM RE: binance script - by torgny4 - May-30-2020, 09:49 PM RE: binance script - by GOTO10 - May-31-2020, 02:07 AM

Forum Jump:

### User Panel Messages

##### Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020