def start_grid(self, mid_point, mode): self.grid_mid = float(mid_point) tick_size = get_tick_size(self.instrument[0]) # Change to volatility based if mode == 'TREND': self.buy_level_one = self.grid_mid + (tick_size * (get_grid_spacing() * 2)) self.buy_level_two = self.grid_mid + (tick_size * (get_grid_spacing() * 4)) self.buy_level_three = self.grid_mid + (tick_size * (get_grid_spacing() * 6)) self.buy_next_marker = self.grid_mid + (tick_size * (get_grid_spacing() * 8)) self.stop_loss_buy = self.grid_mid - (tick_size* (get_grid_spacing() * 2)) self.sell_level_one = self.grid_mid - (tick_size * (get_grid_spacing() * 2)) self.sell_level_two = self.grid_mid - (tick_size * (get_grid_spacing() * 4)) self.sell_level_three = self.grid_mid - (tick_size * (get_grid_spacing() * 6)) self.sell_next_marker = self.grid_mid - (tick_size * (get_grid_spacing() * 8)) self.stop_loss_sell = self.grid_mid + (tick_size * (get_grid_spacing() * 2)) else: self.buy_level_one = self.grid_mid + (tick_size * (get_grid_spacing() * 2)) self.buy_level_two = self.grid_mid + (tick_size * (get_grid_spacing() * 4)) self.buy_level_three = self.grid_mid + (tick_size * (get_grid_spacing() * 4)) self.take_profit_buy = self.grid_mid + (tick_size * (get_grid_spacing() * 6)) self.stop_loss_buy = self.grid_mid - (tick_size * (get_grid_spacing() * 2)) self.sell_level_one = self.grid_mid - (tick_size * (get_grid_spacing() * 2)) self.sell_level_two = self.grid_mid - (tick_size * (get_grid_spacing() * 4)) self.sell_level_three = self.grid_mid - (tick_size * (get_grid_spacing() * 4)) self.take_profit_sell = self.grid_mid - (tick_size * (get_grid_spacing() * 6)) self.stop_loss_sell = self.grid_mid + (tick_size * (get_grid_spacing() * 2))
def shift_grid_ar(self, direction): tick_size = get_tick_size(self.instrument[0]) if direction > 0: self.take_profit_buy += (tick_size * (get_grid_spacing() * 2)) self.level_triggered += 1 elif direction < 0: self.take_profit_sell -= (tick_size * (get_grid_spacing() * 2)) self.level_triggered -= 1
def shift_grid_trend(self, direction, shift_marker=False ): tick_size = get_tick_size(self.instrument[0]) if direction > 0: self.stop_loss_buy += (tick_size * (get_grid_spacing() * 2)) self.level_triggered += 1 if shift_marker: self.buy_next_marker += (tick_size * (get_grid_spacing() * 2)) elif direction < 0: self.stop_loss_sell -= (tick_size * (get_grid_spacing() * 2)) self.level_triggered -= 1 if shift_marker: self.sell_next_marker -= (tick_size * (get_grid_spacing() * 2))
def start_grid(self, mid_point): self.grid_mid = float(mid_point) tick_size = get_tick_size(self.instrument[0]) # Change to volatility based self.sell_level_one = self.grid_mid + (tick_size * (get_grid_spacing() * 2)) self.sell_level_two = self.grid_mid + (tick_size * (get_grid_spacing() * 4)) self.stop_loss_sell = self.grid_mid + (tick_size * (get_grid_spacing() * 4)) self.sell_next_marker = self.grid_mid - (tick_size * (get_grid_spacing() * 2)) self.buy_level_one = self.grid_mid - (tick_size * (get_grid_spacing() * 2)) self.buy_level_two = self.grid_mid - (tick_size * (get_grid_spacing() * 4)) self.stop_loss_buy = self.grid_mid - (tick_size * (get_grid_spacing() * 4)) self.buy_next_marker = self.grid_mid + (tick_size * (get_grid_spacing() * 2))