Jump to content
July Ighor

Qt Bitcoin Trader - Клиент для безопасных торгов на известных биржах

Recommended Posts

3 минуты назад, July Ighor сказал:


Я лишь ответил на вопрос, если так не работает значит либо у вас текущая пара не BTC/USD (так как достаются данные только текущей пары) либо баг.
Если баг то исправим. Скажите а когда используете ивент LastMyBuyPrice а не функции get, то приходят значения?

Вот вывод скрипта:
 

21:07:17> BTC/USD: Buy 0.0000425 at 4704.85
21:07:17> balUsd_2= , boughtBtcFinal= 
21:07:17> bought 0.0000425 BTC, price= 
21:07:17> ggg= nan
21:07:24> GetBtcBalance() boughtFor= 4704.85 , boughtBtcFinal= 0.00018
21:07:24> GetUsdBalance() balUsd_2= 32.47364242 , boughtFor= 4704.85

и "price= "  и "boughtFor= 4704.85"  получаются из запроса

boughtFor = trader.get("LastMyBuyPrice");

(  trader.log("bought ", lacksBtc, " BTC, price=", boughtFor);    trader.log("GetBtcBalance()    boughtFor=",boughtFor,", boughtBtcFinal=",boughtBtcFinal);  )

 

соответственно пока отрабатывала функция - значение не успело прийти, а потом вывелись результаты работы вызовов этих 2х дополнительных функций с делеем и там уже результат есть   boughtFor= 4704.85

Что касается текущей пары - то у меня нет сретств на других монетах, ну и последующий приход данных, хоть и с опозданиемБ подтверждает что пара та самая.

Share this post


Link to post
Share on other sites
34 минуты назад, nlogo сказал:

Вот вывод скрипта:
 

21:07:17> BTC/USD: Buy 0.0000425 at 4704.85
21:07:17> balUsd_2= , boughtBtcFinal= 
21:07:17> bought 0.0000425 BTC, price= 
21:07:17> ggg= nan
21:07:24> GetBtcBalance() boughtFor= 4704.85 , boughtBtcFinal= 0.00018
21:07:24> GetUsdBalance() balUsd_2= 32.47364242 , boughtFor= 4704.85

и "price= "  и "boughtFor= 4704.85"  получаются из запроса

boughtFor = trader.get("LastMyBuyPrice");

(  trader.log("bought ", lacksBtc, " BTC, price=", boughtFor);    trader.log("GetBtcBalance()    boughtFor=",boughtFor,", boughtBtcFinal=",boughtBtcFinal);  )

 

соответственно пока отрабатывала функция - значение не успело прийти, а потом вывелись результаты работы вызовов этих 2х дополнительных функций с делеем и там уже результат есть   boughtFor= 4704.85

Что касается текущей пары - то у меня нет сретств на других монетах, ну и последующий приход данных, хоть и с опозданиемБ подтверждает что пара та самая.


Возможно там баг и вы можете помочь быстрее исправить.

Добавьте пожалуйста этот код и скажите получаете ли вывод.

trader.on("LastMyBuyPrice").changed()
{

trader.log("test", symbol, name, value);
}
Так же скажите меняется ли значение двух индикаторов в панельке истории своих транзакций во время выполнения скрипта?
Попробуйте использовать trader.get("BTCUSD", "LastMyBuyPrice");

Edited by July Ighor

Share this post


Link to post
Share on other sites
8 минут назад, July Ighor сказал:


Возможно там баг и вы можете помочь быстрее исправить.

Добавьте пожалуйста этот код и скажите получаете ли вывод.

trader.on("LastMyBuyPrice").changed()
{

trader.log("test", symbol, name, value);
}
Так же скажите меняется ли значение двух индикаторов в панельке истории своих транзакций во время выполнения скрипта?
Попробуйте использовать trader.get("BTCUSD", "LastMyBuyPrice"); 

сделал

вот вывод:

23:10:41> ----------------- QTBuy -----------------------
23:10:41> BTC/USD: Buy 0.00004216 at 4749.18
23:10:41> balUsd_2= , boughtBtcFinal= 
23:10:41> bought 0.00004216 BTC, boughtFor= 
23:10:41> ggg= nan
23:10:42> test BTC/USD LastMyBuyPrice 4740.73
23:10:48> GetBtcBalance() boughtFor= 0 , boughtBtcFinal= 0.00022
23:10:48> GetUsdBalance() balUsd_2= 5532.28363396 , boughtFor= 0

скрипт был таким:

var ggg;
ggg = QTBuy(0.2);
trader.log("ggg=", ggg);

function QTBuy(buyUsdtValue){
    trader.log("----------------- QTBuy -----------------------");
    var balUsd_1;
    var balUsd_2;
    var balBtc;
    var askVolumePrice;
    var boughtFor;
    var lacksUsd;
    var lacksBtc;
    var nowPrice;
    var boughtBtcFinal;

    balBtc  = trader.get("Balance","BTC") ;  

//    trader.delay(5,"myDelay()");

        balUsd_1  = trader.get("Balance","USD") ;

            lacksUsd = buyUsdtValue;// вычислим сколько осталось еще потратить до нужной суммы
            nowPrice = trader.get("AskPrice");
                trader.delay(5,"myDelay()");
            lacksBtc = lacksUsd / nowPrice; // приблизительный объем покупки
            askVolumePrice = trader.get("AsksPrice",lacksBtc);  // AsksPrice показывет цену напротив суммарного объема битков
                trader.delay(5,"myDelay()");
            trader.buy("BTC/USD" , lacksBtc , (8+askVolumePrice)); 


    trader.on("LastMyBuyPrice").changed()
    {
        trader.log("test", symbol, name, value);
    }

                trader.delay(5,"myDelay()");
                trader.delay(7,"GetUsdBalance()");
                trader.delay(7,"GetBtcBalance()");

            if(balUsd_2 == balUsd_1 || boughtBtcFinal == balBtc) {
                trader.cancelBids();
                trader.delay(5,"myDelay()");
                trader.delay(7,"GetUsdBalance()");
                trader.delay(7,"GetBtcBalance()");
            }


              trader.log("balUsd_2=",balUsd_2,", boughtBtcFinal=",boughtBtcFinal);
              trader.log("bought ", lacksBtc, " BTC, boughtFor=", boughtFor);




    boughtBtcFinal  = boughtBtcFinal - balBtc;

    return ( MyRoundTo8(boughtBtcFinal) );
}

//--------------------------------------------
function GetBtcBalance(){
    boughtFor = trader.get("BTCUSD", "LastMyBuyPrice");  
    boughtBtcFinal  = trader.get("Balance","BTC") ;
    trader.log("GetBtcBalance()    boughtFor=",boughtFor,", boughtBtcFinal=",boughtBtcFinal);

}

//--------------------------------------------
function GetUsdBalance(){
    boughtFor = trader.get("BTCUSD", "LastMyBuyPrice");  
    balUsd_2  = trader.get("Balance","USD") ;
    trader.log("GetUsdBalance()  balUsd_2=",balUsd_2,", boughtFor=",boughtFor);
}

//--------------------------------------------

function MyRoundTo2(MyValue){    
    var result = Math.round(MyValue * 100) / 100;
    return result;
}
//--------------------------------------------

function MyRoundTo8(MyValue){    
    var result = Math.round(MyValue * 100000000) / 100000000;
    return result;
}

в "истории моих сделок" окошко цены показало правильную цену покупки...

Биржа HitBTC

Только что, nlogo сказал:

меняется ли значение двух индикаторов в панельке истории своих транзакций

в "истории моих сделок" окошко цены показало правильную цену покупки...    -  если вы это имели ввиду

Share this post


Link to post
Share on other sites
7 часов назад, nlogo сказал:

boughtFor = trader.get("BTCUSD", "LastMyBuyPrice");

как видно тут стали почему то выводится нули (когда выводится).... 

 

Edited by nlogo

Share this post


Link to post
Share on other sites

@nlogo все еще изучаю проблему, а пока

 

Вышел апдейт Qt Bitcoin Trader v1.40.41

 

Исправлен баг в интеграции Bitstamp API
Исправлен критический баг в диалоге правил, которые не работали при использовании комиссии в цене
Исправлен баг синхронизации времени
Исправлен ордербук в Binance
Удалена биржа Wex
Добавлена настройка альтернативного домена для Yobit
Исправлен визуальный баг мерцания панелек
Много мелких фиксов

Share this post


Link to post
Share on other sites

прочитал стартовый пост, не нашёл главной инфы: 1) сколько стоит? 2) какой оф. сайт программы? очень странно, выложены только ссылки на исходники проги на файлообменниках, первый раз такое вижу  Оо

Share this post


Link to post
Share on other sites
3 минуты назад, golova сказал:

прочитал стартовый пост, не нашёл главной инфы: 1) сколько стоит? 2) какой оф. сайт программы? очень странно, выложены только ссылки на исходники проги на файлообменниках, первый раз такое вижу  Оо

 

Программа бесплатная. Разработка велась за счет средств от поддерживаемых бирж, а теперь разработка ведется за счет проекта https://qttrader.com

Официальный сайт https://centrabit.com

Share this post


Link to post
Share on other sites

добрый день. стоп-лосс и тейк я так понимаю нет возможности одновременно выставить?

Share this post


Link to post
Share on other sites

Добрый день! Программа работает с маржой на битфайнексе? Также, можно при покупке или продаже по рынку, что бы система автоматически выставляла стоп и тейк профит по заранее установленному %?

Share this post


Link to post
Share on other sites
18.04.2019 в 19:40, lovecreep сказал:

добрый день. стоп-лосс и тейк я так понимаю нет возможности одновременно выставить?

 

Можете запускать группы разных правил или скрипты одновременно.

 

44 минуты назад, CrimSonMAN сказал:

Добрый день! Программа работает с маржой на битфайнексе? Также, можно при покупке или продаже по рынку, что бы система автоматически выставляла стоп и тейк профит по заранее установленному %?

 

Работает, маржа отображается как отдельные пары. Вы можете скриптом анализировать изменения цен и решать когда открывать и закрывать ордера, делая сравнения с сохраненными данными в %.

Share this post


Link to post
Share on other sites

Правильно ли я понял, что использование правил с различными крипто парами невозможно без ручного переключения окошек и выбора этих самых пар?

Share this post


Link to post
Share on other sites
16 минут назад, OlegF123 сказал:

Правильно ли я понял, что использование правил с различными крипто парами невозможно без ручного переключения окошек и выбора этих самых пар?

 

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

Share this post


Link to post
Share on other sites

А кто может подсказать где можно взять готовые скрипты желательно с пояснениями?
А то что-то туплю я с алгоримированием...

Ну или может кто подскажет

Нужен просто алгоритм.

1. Создать сетку на продажу в которой  каждый ордер отстоит от другого на "X" сатошей и при этом ордера увеличиваются по мартину (с указанным процентом)

2. Если первый ордер сработал, выставить ордер на покупку "обьём ордер1" по цене "цена продажи минус Y сатош".

3. Если сработал следующий ордер продажи, то снять ордер покупки и создать новый ордер "сумма ордер1+ордер2" по цене  "цена ордера2 минус Y сатош"

4. Если сработал ордер выкупа, все снять и начать сначала.

5. Если ниодин из ордеров несработал, а цена ушла на "Z" сатош, переставить сетку.

Edited by rgusev

Share this post


Link to post
Share on other sites

Qt Bitcoin Trader v1.40.43 Released!

Request interval now can be set less than 0.5 seconds
Fixed bug when timers wasn't stopped on group stop
Fixed crash when open Debug dialog
Fixed incorrect fee value in Bitfinex
Fixed filter open orders in Bitfinex
Fixed tray icon in Linux
Fixed bug caused long delay after network down
Fixed on top mode for dock widgets
Fixed bug when password was incorrectly detected as weak
Currency pairs synchronized in all exchanges
 

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
7 часов назад, Avodlom сказал:

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

 

Запуск с паролем это мера безопасности, пока только вы первый кто просил возможность это отключить.

Можете создать реквест тут https://github.com/JulyIghor/QtBitcoinTrader/issues и если будет много тех кому это нужно, добавим.

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

Share this post


Link to post
Share on other sites

А можно пример написания стратегий?
Думаю этот вопрос многих волнует

Share this post


Link to post
Share on other sites

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

 

Share this post


Link to post
Share on other sites
18.10.2019 в 22:29, July Ighor сказал:

 

Запуск с паролем это мера безопасности, пока только вы первый кто просил возможность это отключить.

Можете создать реквест тут https://github.com/JulyIghor/QtBitcoinTrader/issues и если будет много тех кому это нужно, добавим.

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

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

 

Проблема уже с моей стороны, я полный ноль в создании скриптов и понятия не имею как сделать скрипт, который будет помнить какое правило включить, и сохранять состояние в файл. Если можно дайте пример, я может под себя переделаю.

Share this post


Link to post
Share on other sites

А в целом огромное спасибо за программу и функционал ... нужную мне стратегию я настроил правилами и все работает.

 

Заметил один баг, может только у меня, но если прога работает дней 5-7 без перерыва, то она теряет связь с биржей. А если точнее, то данные она принимает, курс читает, правила работают, а вот обратно на биржу ничего не летит и не обновляет баланс биржи. Как проявится еще раз, попробую заскринить или как-то зафиксировать)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Topics

    • ExchangeRates.Pro: сравнение цен Bitcoin/Crypto обменников, бирж, P2P площадок в 255 странах!

      Привет всем настоящим и будущим криптовалютчикам и сочувствующим! 👋😎👍 Приглашаем оценить раннюю, но вполне работоспособную и полезную версию ExchangeRates.Pro: единственного и неповторимого 😀 прайс-агрегатора Bitcoin и Криптовалют в России, СНГ и мире!   Чем уникален ExchangeRates.Pro?   Не беспокойтесь, это не очередной 1001-й мониторинг обменных пунктов, наша платформа может намного больше:   Мы сравниваем цены обменных пунктов, бирж и P2P площадок как LocalBitc

      in Мониторинг

    • Кошелек Bitcoin (Bitcoin-QT, Bitcoin Core)

      Официальный сайт | Исходный код | История версий   В теме действуют все Правила форума! Перед тем как задать вопрос, посмотрите НОВИЧКИ Bits.Media, все сюда. Уважайте своё и чужое время. Для обсуждения и поиска программ/драйверов пользуйтесь разделом Файлы. Сообщения, не относящиеся к теме обсуждения (оффтоп), удаляются без предупреждения.   Описание:   Статьи на bits.media:   Загрузить:  

      in Кошельки для криптовалют

    • Может ли Bitcoin стать полноценными деньгами ? (нет ?!)

      Вопрос: Может ли Bitcoin стать полноценным, активно используемым средством расчета ?!    Как мы знаем, BTC полностью централизован и подавляющее количество майнинговых мощностей сосредоточено в Китае. В следствие этого Китайские майнеры имеют огромное влияние на блокчейн btc. При желании они могут сильно ограничить работоспособность сети или причинить ей значительный ущерб, проведя например атаку 51%. Да, безусловно эти майнеры в определенной мере заинтересованы в стабильно работающе

      in Биткоин

    • Курс Bitcoin

      В данной ветке предлагаю вести обсуждение курса Bitcoin Также у нас есть ветка по обсуждению "справедливого курса" Bitcoin     Несколько полезных инструментов для отслеживания курса: bitcoin.clarkmoody отображает стакан Mt.Gox и строит в реалтайме японские свечи bitcoinchain сравнение курсов на разных биржах на одном графике bitcoincharts курсы на различных биржах в табличном представлении   Хотите погадать на курсе? К вашим услугам Биткоин-Ванга

      in Биткоин

    • В сети Bitcoin Cash состоялся хардфорк и добавлены подписи Шнорра

      В сети Bitcoin Cash прошел запланированный хардфорк, в ходе которого добавлены подписи Шнорра для повышения конфиденциальности транзакций и улучшения масштабирования.   Обновление было активировано на блоке 609 136. Как отметили исследователи BitMEX Research в Твиттере, более старая версия клиента Bitcoin ABC 0.19.0 признала этот блок недействительным. При этом новая версия Bitcoin ABC 0.20.6 приняла блок, подтвердив успешное выполнение хардфорка.   Блок 609136 найд

      in Новости криптовалют

×
×
  • Create New...