Перейти к публикации
Форум ботоводов

Рекомендованные сообщения

Изначально было так:

 

# Получаем с биржи данные, необходимые для построения индикаторов
def get_ticks(market, period):
    chart_data = {}
    # Получаем готовые данные свечей
    res = requests.get("https://bittrex.com/Api/v2.0/pub/market/GetTicks?marketName=" + market + "&tickInterval="+period, verify=Config.SECURE).json()
    if not res['success']:
        market_log = log.get_logger(market)
        market_log = logging.LoggerAdapter(market_log, extra={'log_name': market})
        market_log.warning(str(res))
        if res['message'] == 'INVALID_MARKET':
            market_log.warning(

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
38 минут назад, admin сказал:

Может не в том файле поменяли?
Судя по выводу файл
C:\Users\?\Desktop\USD-ETH_MR\misc.py

в нем строка 

res = requests.get("https://bittrex.com/Api/v2.0/pub/market/GetTicks?marketName=" + market + "&tickInterval="+period, verify=Config.SECURE).json()

заканчивается на json(), а в вашем примере по другому

в предлагаемой строке для замены старой у вас тоже отсутствует json()

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если сейчас у вас без json то запустите и покажите что пишет

То, что вы присылали раньше однозначно говорило, что изменения внесены не были

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
8 минут назад, admin сказал:

Если сейчас у вас без json то запустите и покажите что пишет

То, что вы присылали раньше однозначно говорило, что изменения внесены не были

Разобрался...синтаксическая ошибка....только где???? ....отступы скорее всего???

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
17 минут назад, admin сказал:

Если сейчас у вас без json то запустите и покажите что пишет

То, что вы присылали раньше однозначно говорило, что изменения внесены не были

То, что я показывал ранее это изначальная ошибка....до замены

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, admin сказал:

Скорее всего...

а вы не могли бы поменять код для скачивания с учётом замены или как то отдельно его выложить? А то не пойму где синтаксическая ошибка....вроде всё перепробовал.☹️

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ЧТо бы понять, что такое отвечает вам биржа, нужно произвести замену и посмотреть
Но скорее всего это та же проблема с защитой от DDOS, которую обсуждали ранее

Я выложил код бота с убранной многопоточностью, т.к. вряд ли биттрекс вернет прежнюю свободу

Скачайте новый файл, лучше в новую папку, и посмотрите, уйдут ли ошибки

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
26 минут назад, admin сказал:

ЧТо бы понять, что такое отвечает вам биржа, нужно произвести замену и посмотреть
Но скорее всего это та же проблема с защитой от DDOS, которую обсуждали ранее

Я выложил код бота с убранной многопоточностью, т.к. вряд ли биттрекс вернет прежнюю свободу

Скачайте новый файл, лучше в новую папку, и посмотрите, уйдут ли ошибки

 

Проблема та же....

2019-04-18 16:53:47,320 USD-ETH: Получаем все неисполненные ордера по БД<br/>
2019-04-18 16:53:47,322 USD-ETH: Неисполненных ордеров в БД нет, пора ли создать новый?<br/>
2019-04-18 16:53:47,737 USD-ETH: Error!!!!<br/>
Traceback (most recent call last):
  File "C:\Users\...\Bittrex\MACD+RSI\main.py", line 228, in process_market
    macd_advice = get_macd_advice(chart_data=get_ticks(market, period=Config.MACD_TICK_INTERVAL))
  File "C:\Users\...\Bittrex\MACD+RSI\misc.py", line 103, in get_ticks
    res = requests.get("https://bittrex.com/Api/v2.0/pub/market/GetTicks?marketName=" + market + "&tickInterval="+period, verify=Config.SECURE).json()
  File "C:\Users\...\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\models.py", line 897, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Users\....\AppData\Local\Programs\Python\Python37\lib\json\__init__.py", line 348, in loads
    return _default_decoder.decode(s)
  File "C:\Users\....\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\....\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

 

 

Изменено пользователем explorersrm

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
18.04.2019 в 16:28, admin сказал:

ЧТо бы понять, что такое отвечает вам биржа, нужно произвести замену и посмотреть
Но скорее всего это та же проблема с защитой от DDOS, которую обсуждали ранее

Я выложил код бота с убранной многопоточностью, т.к. вряд ли биттрекс вернет прежнюю свободу

Скачайте новый файл, лучше в новую папку, и посмотрите, уйдут ли ошибки

 

18.04.2019 в 15:16, admin сказал:

Может не в том файле поменяли?
Судя по выводу файл
C:\Users\?\Desktop\USD-ETH_MR\misc.py

в нем строка 

res = requests.get("https://bittrex.com/Api/v2.0/pub/market/GetTicks?marketName=" + market + "&tickInterval="+period, verify=Config.SECURE).json()

заканчивается на json(), а в вашем примере по другому

Проблема решается методом увеличения пример MARKET_WAIT_TIME = 30  #

но появилась другая, в момент срабатывания бота по сигналам выдаёт:

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\logging\__init__.py", line 983, in emit
    msg = self.format(record)
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\logging\__init__.py", line 829, in format
    return fmt.format(record)
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\logging\__init__.py", line 572, in format
    s = self.formatMessage(record)
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\logging\__init__.py", line 541, in formatMessage
    return self._style.format(record)
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\logging\__init__.py", line 384, in format
    return self._fmt % record.__dict__
KeyError: 'log_name'
Call stack:
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\threading.py", line 885, in _bootstrap
    self._bootstrap_inner()
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\threading.py", line 917, in _bootstrap_inner
    self.run()
  File "C:\Users\..\AppData\Local\Programs\Python\Python37\lib\threading.py", line 865, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\..\Desktop\ETH-ZEC_MR\main.py", line 264, in process_market
    error_log.exception('Error!!!!')
Message: 'Error!!!!'
Arguments: ()

 

 

Изменено пользователем explorersrm

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Замените error_log на log или как там в остальном коде используется

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добрый день планирую в течении месяца освоиться на биржах, потом написать удобного себе бота на примере вашего. В связи с этим вопрос - с какой суммой имеет смысл входить с ботом и на какой процент за месяц имеет смысл рассчитывать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Входите с той суммой, которую не жалко потерять :)

Для человека без опыта зарабатывать что с ботом что без, очень сложно. Все равно приходится распределять средства, выбирать пары, иногда что то продать с убытком, иногда что-то придержать. 

Бот это автомат, а трейдер - солдат, и если выпустить неопытного солдата с автоматом в бой.. Ну вы поняли

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

на балансе 75 usd находит сделку но не проводит

часть лога:

2019-06-06 23:47:32,562 USD-TRX: Получаем все неисполненные ордера по БД<br/>
2019-06-06 23:47:32,563 USD-TRX: Неисполненных ордеров в БД нет, пора ли создать новый?<br/>
2019-06-06 23:47:38,473 USD-TRX: MACD позволяет войти на рынок<br/>
2019-06-06 23:47:43,163 USD-TRX: RSI позволяет войти на рынок<br/>
2019-06-06 23:47:43,164 USD-TRX: Создаем ордер на покупку<br/>
2019-06-06 23:47:43,164 USD-TRX: Создаем ордер на покупку<br/>
2019-06-06 23:47:43,165 USD-TRX: Получаем текущие курсы<br/>
2019-06-06 23:47:43,166 USD-TRX: API requested: {'method': '/public/getticker', 'market': 'USD-TRX'}<br/>
2019-06-06 23:47:43,166 USD-TRX: URL: https://bittrex.com/api/v1.1/public/getticker?apikey=bda61e7a8ad24a4a9e3152c74c7d7faf&nonce=1559839663nonce=1559839663&method=%2Fpublic%2Fgetticker&market=USD-TRX<br/>
2019-06-06 23:47:43,666 USD-TRX: API returned: {'success': True, 'message': '', 'result': {'Bid': 0.03212, 'Ask': 0.03235, 'Last': 0.03227}}<br/>
2019-06-06 23:47:43,666 USD-TRX: 
        Текущая цена - 0.03235000
        На сумму 4.00000000 USD можно купить 123.64760433 TRX
        Создаю ордер на покупку
        <br/>
2019-06-06 23:47:43,667 USD-TRX: API requested: {'method': '/market/buylimit', 'market': 'USD-TRX', 'quantity': 123.64760432766616, 'rate': '0.0320'}<br/>
2019-06-06 23:47:43,668 USD-TRX: URL: https://bittrex.com/api/v1.1/market/buylimit?apikey=bda61e7a8ad24a4a9e3152c74c7d7faf&nonce=1559839664nonce=1559839664&method=%2Fmarket%2Fbuylimit&market=USD-TRX&quantity=123.64760432766616&rate=0.0320<br/>
2019-06-06 23:47:44,136 USD-TRX: API returned: {'success': False, 'message': 'MIN_TRADE_REQUIREMENT_NOT_MET', 'result': None}<br/>
2019-06-06 23:47:44,137 USD-TRX: 
            Не удалось создать ордер: MIN_TRADE_REQUIREMENT_NOT_MET
        <br/>

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Видимо 4 USD это слишком мало для покупки, поставьте больше

06.06.2019 в 19:50, lexus_lx сказал:

На сумму 4.00000000 USD можно купить 123.64760433 TRX

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
23.06.2019 в 21:35, admin сказал:

 

 

Здравствуйте.

2 вопроса.

1. Бот поддерживает Short?

2. Можно ли сделать поддержку другой биржи? В частности STEX.

Как я понимаю, бот с открытым исходным кодом, но я что то не могу разбратся с обращениями по API. Не программер, ниразу ;-(

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нет, только лонг

Переделать конечно можно подо что угодно, но нужно немного знать программирование

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
14 часов назад, admin сказал:

Нет, только лонг

Переделать конечно можно подо что угодно, но нужно немного знать программирование 

Понятие "немного" расплывчатое.

Ну на шелл я немного пишу. ("батники")

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
 

на балансе 75 usd находит сделку но не проводит

часть лога:

2019-06-06 23:47:32,562 USD-TRX: Получаем все неисполненные ордера по БД<br/>
2019-06-06 23:47:32,563 USD-TRX: Неисполненных ордеров в БД нет, пора ли создать новый?<br/>
2019-06-06 23:47:38,473 USD-TRX: MACD позволяет войти на рынок<br/>
2019-06-06 23:47:43,163 USD-TRX: RSI позволяет войти на рынок<br/>
2019-06-06 23:47:43,164 USD-TRX: Создаем ордер на покупку<br/>
2019-06-06 23:47:43,164 USD-TRX: Создаем ордер на покупку<br/>
2019-06-06 23:47:43,165 USD-TRX: Получаем текущие курсы<br/>
2019-06-06 23:47:43,166 USD-TRX: API requested: {'method': '/public/getticker', 'market': 'USD-TRX'}<br/>
2019-06-06 23:47:43,166 USD-TRX: URL: https://bittrex.com/api/v1.1/public/getticker?apikey=bda61e7a8ad24a4a9e3152c74c7d7faf&nonce=1559839663nonce=1559839663&method=%2Fpublic%2Fgetticker&market=USD-TRX<br/>
2019-06-06 23:47:43,666 USD-TRX: API returned: {'success': True, 'message': '', 'result': {'Bid': 0.03212, 'Ask': 0.03235, 'Last': 0.03227}}<br/>
2019-06-06 23:47:43,666 USD-TRX: 
        Текущая цена - 0.03235000
        На сумму 4.00000000 USD можно купить 123.64760433 TRX
        Создаю ордер на покупку
        <br/>
2019-06-06 23:47:43,667 USD-TRX: API requested: {'method': '/market/buylimit', 'market': 'USD-TRX', 'quantity': 123.64760432766616, 'rate': '0.0320'}<br/>
2019-06-06 23:47:43,668 USD-TRX: URL: https://bittrex.com/api/v1.1/market/buylimit?apikey=bda61e7a8ad24a4a9e3152c74c7d7faf&nonce=1559839664nonce=1559839664&method=%2Fmarket%2Fbuylimit&market=USD-TRX&quantity=123.64760432766616&rate=0.0320<br/>
2019-06-06 23:47:44,136 USD-TRX: API returned: {'success': False, 'message': 'MIN_TRADE_REQUIREMENT_NOT_MET', 'result': None}<br/>
2019-06-06 23:47:44,137 USD-TRX: 
            Не удалось создать ордер: MIN_TRADE_REQUIREMENT_NOT_MET
        <br/>

на Биттрексе есть минимальная ставка равная 0.0005 BTC...соответственно при увеличении курса и увеличиваем минимальную ставку в $.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ДОБРЫ ДЕНЬ

,Бот отлично работает, но если создает ордер на покупку-потом не может его отменить 

File "D:\майнинг\bot\bittrex_macdusdnew\main.py", line 190, in process_market
    if not orders_info[order]['partially_filled'] and not orders_info[order]['order_cancelled']:
KeyError: 'partially_filled'
2019-08-13 13:50:14,876 USD-zrx: Получаем все неисполненные ордера по БД<br/>
2019-08-13 13:50:14,985 USD-zrx: Получены неисполненные ордера из БД<br/>
2019-08-13 13:50:15,110 USD-zrx: Проверяем состояние ордера 5d3bd372-1c42-47f3-9fe2-9129425694c8<br/>
2019-08-13 13:50:16,218 USD-zrx: Ордер 5d3bd372-1c42-47f3-9fe2-9129425694c8 еще не выполнен<br/>
2019-08-13 13:50:16,280 USD-zrx: Error!!!!<br/>
Traceback (most recent call last):
  File "D:\майнинг\bot\bittrex_macdusdnew\main.py", line 190, in process_market
    if not orders_info[order]['partially_filled'] and not orders_info[order]['order_cancelled']:
KeyError: 'partially_filled'

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
13.08.2019 в 14:16, Theankud сказал:

ДОБРЫ ДЕНЬ

,Бот отлично работает, но если создает ордер на покупку-потом не может его отменить 

File "D:\майнинг\bot\bittrex_macdusdnew\main.py", line 190, in process_market
    if not orders_info[order]['partially_filled'] and not orders_info[order]['order_cancelled']:
KeyError: 'partially_filled'
2019-08-13 13:50:14,876 USD-zrx: Получаем все неисполненные ордера по БД<br/>
2019-08-13 13:50:14,985 USD-zrx: Получены неисполненные ордера из БД<br/>
2019-08-13 13:50:15,110 USD-zrx: Проверяем состояние ордера 5d3bd372-1c42-47f3-9fe2-9129425694c8<br/>
2019-08-13 13:50:16,218 USD-zrx: Ордер 5d3bd372-1c42-47f3-9fe2-9129425694c8 еще не выполнен<br/>
2019-08-13 13:50:16,280 USD-zrx: Error!!!!<br/>
Traceback (most recent call last):
  File "D:\майнинг\bot\bittrex_macdusdnew\main.py", line 190, in process_market
    if not orders_info[order]['partially_filled'] and not orders_info[order]['order_cancelled']:
KeyError: 'partially_filled'

Внес небольшие изменения, обновил файл на форуме, можете скачать по новой

Bittrex+MACD+RSI

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ВРОДЕ ДА, СПАСИБО, ЗАВИСШИХ ОРДЕРОВ НЕТ, ТОЛЬКО БОТ КАК ПЕРВЫЙ,  ТАК И ВТОРОЙ ВАРИАНТ -   В ТАКОМ ВИДЕ КАК ЕСТЬ ВЫДАЕТ ОШИБКИ  ЧЕРЕЗ 1-10 МИНУТ РАБОТЫ , А ..НАЧИНАЕТ НОРМАЛЬНО РАБОТАТЬ ПОСЛЕ ИСПРАВЛЕНИЙ КАК ОПИСАНО В ПЕРВЫХ ПОСТАХ  ...

Код run.py замените на

import threading
from config import Config
from main import process_market

if __name__ == '__main__':
    while True:
    	for market in Config.MARKETS:
        	process_market(market)

А в main.py после строки

time.sleep(Config.MARKET_WAIT_TIME)

добавьте break

time.sleep(Config.MARKET_WAIT_TIME)
break
Изменено пользователем Theankud

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
04.09.2019 в 01:54, Theankud сказал:

ВРОДЕ ДА, СПАСИБО, ЗАВИСШИХ ОРДЕРОВ НЕТ, ТОЛЬКО БОТ КАК ПЕРВЫЙ,  ТАК И ВТОРОЙ ВАРИАНТ -   В ТАКОМ ВИДЕ КАК ЕСТЬ ВЫДАЕТ ОШИБКИ  ЧЕРЕЗ 1-10 МИНУТ РАБОТЫ , А ..НАЧИНАЕТ НОРМАЛЬНО РАБОТАТЬ ПОСЛЕ ИСПРАВЛЕНИЙ КАК ОПИСАНО В ПЕРВЫХ ПОСТАХ  ...

Код run.py замените на


import threading
from config import Config
from main import process_market

if __name__ == '__main__':
    while True:
    	for market in Config.MARKETS:
        	process_market(market)

А в main.py после строки


time.sleep(Config.MARKET_WAIT_TIME)

добавьте break


time.sleep(Config.MARKET_WAIT_TIME)
break

Да насчёт этих настроек я тоже догадался, т.к. сразу многопоточность врубалась, а вот по поводу отмены ордера новая ошибка

911.JPG

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.


×
×
  • Создать...