Перейти к содержимому

Поиск по сайту

Результаты поиска по тегам 'api'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Bitcoin форум

  • Новости и события
    • Новости
    • Статьи Bits.media
    • Мероприятия
  • Разговоры о Bitcoin и криптовалютах
    • Общий
    • Bitcoin
    • Форки Bitcoin, альткоины
    • Блокчейн и финтех
    • Юридические вопросы
    • Кошельки для криптовалют
    • Разработка
    • Безопасность
    • Мониторинг
    • Конкурсы
    • Флейм
  • Экономика & Операции с Bitcoin
    • Экономика
    • Биржи
    • Обменники
    • Трейдинг
    • Магазины и сервисы
    • Краудфандинг и Краудинвестинг
    • Игры, гэмблинг, хайпы, краны
  • Майнинг
    • Общие вопросы по майнингу
    • Пулы совместного майнинга
    • Облачный майнинг и агрегаторы
    • Программы для майнинга
    • Аппаратная часть
  • Барахолка
    • Продажа
    • Покупка
    • Услуги, работа
    • p2p обмен валют
  • О ресурсе Bits.media
    • Предложения и замечания по работе сайта
    • Предложения и замечания по работе форума
    • Предложения и замечания по работе Блога
  • Local
    • English
    • Other

Блоги

  • miner's блог
  • SolomonVR's блог
  • polym0rph's блог
  • AtomicStrike's блог
  • LZ
  • SolomonVR's блог
  • мыслеизлияние
  • Sergey371's блог
  • блог phants'а
  • Nirton's блог
  • loga's блог
  • Viktor Sokolov's блог
  • m134's блог
  • Exdeath's блог
  • yunixon's блог
  • Exdeath's блог
  • egorbtc's блог
  • bronevik's блог
  • R1mlin's блог
  • Рабочий's блог
  • Парадоксальный блог
  • infoman's блог
  • Pa2K's блог
  • PoolSwitcher
  • Garrett's блог
  • forsee1's блог
  • pendalf2008's блог
  • btcshtchka's блог
  • Майнинг Bitcoin
  • Nikita9344_blog
  • Блог Димы
  • Michail's блог
  • Artists for Bitcoin
  • Николай III's блог
  • Artists for Bitcoin
  • ultra's блог
  • Yablya's блог
  • Настройки 7970. Результат 730kh/s в Litecoin
  • SKYnv's блог
  • LuchininAlexandr's блог
  • Kryon's блог
  • Vitto
  • блог нуба
  • Warmrain's блог
  • Новая финансовая система мира
  • ElenaMaaya's блог
  • Шифровалютная экономика
  • kermit's блог
  • Райзеры для видеокарт
  • Виталий's блог
  • Shambler's блог
  • busmainer's блог
  • busmainer's блог
  • полезняшки для себя`s блог
  • AlexShul's блог
  • Помогите если вас не затруднит..Как отметинь выплату BTC...а то мой акаунт зламали и вывели все деньги...
  • HW_from_China's блог
  • app.spec.integra.circuit's блог
  • HW_from_China's блог
  • kolja153's блог
  • neiros' блог
  • Инвестиции в биткоин
  • advodado
  • bronevik's blog
  • Gold Line блог
  • Биткоин Робот
  • Obmen.PM-Сертифицированный партнер платежной системы Perfect Money
  • Antina
  • SHiCK блог
  • Шахтер без шахты
  • Шахтер без шахты
  • Блог пьяного аналитика
  • Блог пьяного аналитика
  • Planetarius' блог
  • Planetarius' блог
  • ObiKenobi's блог
  • RoboBet блог
  • Блог Одного Человека
  • Planetarius' блог
  • Блог Romanov Capital
  • fastesthash.com блог
  • Cryptex
  • sanyatyu's блог
  • TabTrader's блог
  • bitlook
  • нуждаюсь в вашей помощи опытные майнеры!
  • lathyips' блог
  • ironika
  • Познай себя !!!
  • Ult's блог
  • ill359's блог
  • Суровые будни рядового майнера в РФ
  • CEX.io Blog
  • CEX.io
  • Майнинг Gridseed с контроллером Raspberry PI
  • bestcoin's блог
  • SPA
  • Официальный игровой клуб Вулкан
  • Форк будущего, какой он?
  • Btc-Mirbox.com Самая прибыльная программа в интернете
  • Добыча биткоинов
  • majorjora's блог
  • cryptmining.ru
  • блог r2d2
  • РАФАЭЛЬ's блог
  • DDEX блог трейдеров
  • Doomka2014's блог
  • Bitcoin, Litecoin, Doge - С чего начать?
  • dierdan's блог
  • Latium
  • General-Beck's блог
  • кирилллллллллллл's блог
  • tunsash's блог
  • tunsash's блог
  • Rita's блог
  • Philipp's блог
  • Philipp's блог
  • Zarmung's блог
  • CR!PTO Путешествия
  • poop's блог
  • Makezzila's блог
  • GruberCoin - криптовалюта?
  • Gromootvod's блог
  • Одежда с символикой Bitcoin
  • waflya's блог
  • AsicTrade.com
  • Стратегия выхода на зароботок 1 биткоин
  • начать зарабатывать без вложений биткоин
  • saas' блог
  • vov4ik777333's блог
  • Моя история инвестиций в хайпы
  • Блог о Linux внутри майнеров :)
  • Обзор майнеров
  • Socket32's блог
  • Все самое интересное в мире криптовалют one-percent.ru
  • antolmach's блог
  • Alex-ru блог
  • хороший заработок без вложений!
  • По заработку, информация может быть полезна
  • Продам майнер BITMAIN S3
  • asket said...
  • Куда нужно вкладывать свои средства ,чтобы их не потерять и даже заработать на них!!!
  • Ёжики GC3355 - апгрейд (жизнь после "Телеги")
  • En1ken's блог
  • Александр Ch's блог
  • Почему сегодня не открывается сайт bitcoin.org
  • moneymaker's блог
  • НОВЫЕ ХАЙПЫ
  • poiuty's блог
  • Viktor1123's блог
  • golub's блог
  • anajik's блог
  • igorwhite's блог
  • algol68's блог
  • Khamid Sattarov's блог
  • anajik's блог
  • tankist's блог
  • wfdim's блог
  • Ixion's блог
  • BitcoinBank блог
  • fantom's блог
  • Neotex's Blog
  • Александр Самойлов_12600's блог
  • hterw's блог
  • ivanech's блог
  • Новый хайп
  • goodusers' блог
  • motozikl's блог
  • Необыкновенное будущее
  • AndreyNag's блог
  • italiy82's блог
  • Nook89's блог
  • Сибирский червонец
  • interesnye-novosti
  • Биткойномат
  • zzzzz12's блог
  • exspert'bitkoin
  • Александр Глобальный's блог
  • Взрывной Пакет по Заработку Биткоин!
  • Kerver's блог
  • Азартные просторы
  • Компьютерный мастер Баку (опытный мастер)
  • mjauka's блог
  • Vladimir77's блог
  • Joe Black's блог
  • ТоТсамый's блог
  • Kolja's блог
  • antontmn's блог
  • Взрывной Супер Пакет - Как Заработать Без Вложений !!
  • Bordz's блог
  • TheFuzzStone's Blog
  • AndreyNag's Create own PEERCOIN NODE блог
  • demio's place
  • Обменяю ваши WMZ на мои PAYPAL
  • Moonfire's блог
  • Майнер Эфира и Декреда от Claymore
  • nik888's блог
  • EDRCoin info
  • D-APPS
  • 1620$ за 9 дней! заинтересованы ?! пишите в сообещния!
  • Mining bitcoin from farm Hashocean
  • Grail's блог
  • автоматизация процессов
  • Easy Money
  • BLOG Мир Интернет Бизнеса
  • besser99
  • Blog Мир Интернет Бизнеса
  • Blog Julin Gys
  • Coin's блог
  • observer btc-e, наблюдатель BTC-E.COM
  • Заработок биткоинов
  • Дмитрий1839's блог
  • Gridseed GC3355
  • Karasur's блог
  • Right13's блог
  • tanya310119911's блог
  • Swisscoin-Швейцарская криптовалюта
  • Биткоин, путь к луне
  • fancyfinance
  • Evgeny 34's блог
  • Arcady's блог
  • THWGLOBAL
  • solnecno's блог
  • andr1986's блог
  • Заработок в интернете с нуля + халява
  • Alexey654321's блог
  • aleco's blog
  • Tomfox's блог
  • poolminers
  • dini_pal's блог
  • Черновик
  • vovchik's блог
  • KolesCoinNews' блог
  • MONERO FOUNDATION RUSSIA™
  • альбина32's блог
  • ICONOMI до конца ICO 8 дней
  • Vladimir Eliseev's блог
  • Vanya Wang's блог
  • Btc Coin's блог
  • papa_medbedb's блог
  • 6000 сатоши в час. Узнай как!!!
  • BITCOIN блог
  • Свирепый Гарри's блог
  • Sahat's блог
  • Подпишитесь на инстаграмм пожалуйста
  • LeoKartman's блог
  • Se7eN's
  • Снижаем расходы на электричество
  • SERHIY's блог
  • Фаридун's блог
  • ICO (Краудфандинг)
  • Cryptohawk's блог
  • arbitrader's блог
  • ОлегХомин's блог
  • slavserver's блог
  • Enzo's блог
  • masterigr2016's блог
  • kurs.expert блог
  • datachains.world Русский Блокчейн 3.0
  • Закрытый клуб BitClub Network
  • Sayat Ibraev's блог
  • maksim2030's блог
  • ZORROZ's блог
  • vvka's блог
  • скажите кто знаком долго будит жить этот хайп типо майнинг
  • BitClub Network
  • Краудсейл Augmentors ICO
  • Динар's блог
  • disodium
  • Новые краны по сбору биткоинов
  • Pedro
  • Selling account/продажа аккаунта
  • Как обменять Биткоин в Рубли
  • Заработай играя
  • Genesis Mining Russia's блог
  • Гена's блог
  • Гена's блог
  • Baccarat_1
  • Genesis Mining Russia's блог
  • Work-bitcoin
  • Siberian Miners
  • mike0013's блог
  • Внимание Новинка BTCHAMP
  • LeslyGarold's блог
  • Объясни бабуле криптовалюты
  • New bitcoin dice
  • ★ Global Success ★
  • isadora's блог
  • Prince tv's блог
  • КриптоМир блог
  • Блог BitBetNews
  • Cryptotrend
  • BitBetNews' блог
  • AlamurFury's блог
  • AlamurFury's блог
  • doBETacceptBET's блог
  • postscreen's блог
  • Krot's блог
  • МаршалНиколас's блог
  • Самый лучший майнинг биткоинов и других криптовалют
  • Игровые автоматы. Обзор популярных слотов
  • Bitbetnewss' блог
  • barrygoldwon
  • Мошенничество в глобальном масштабе
  • Marina_Aco_M's блог
  • Leon Organo's блог
  • Nikolai Tran's блог
  • Colonizator's блог
  • KriptoKurs блог
  • isa2016's блог
  • Ivan.Sologub
  • Анжелика9808's блог
  • fxseminar's блог
  • Альберт Карачурин's блог
  • Bitcoin
  • isalm's блог
  • Yur1K's блог
  • Нервная система
  • Нервная система
  • Крипто-Проекты
  • comof2014's блог
  • Sand Coin
  • bitaps.com
  • 1 Bitcoin в месяц легко
  • BIP148
  • HEAgEKBATEH's блог
  • Miner42's блог
  • ChangeKripta's блог
  • mediavoice's блог
  • realestate's блог
  • куплю мощности на hashflare SHA-256 SCRYPT
  • proshift's блог
  • Stan Podyachev's блог
  • CNstuff's блог
  • Alex Lee's блог
  • RX470+RX460 падает хешрейт
  • Макроэкономика криптовалют
  • Криптовалюты и ICO
  • NV42Rus' блог
  • Николай Еременко's блог
  • deg237's блог
  • Bit Bet News' блог
  • xcilog's блог
  • YaNeFiShKa's блог
  • Соломон's блог
  • 23
  • Натур. Мясцо
  • AEON растёт в геометрической прогрессии-хватаем халяву
  • Про биткоин в России
  • Investy
  • Оборудование в стоках и фьючерсах. Китай.
  • адрес
  • HOQU
  • VitalyKaminsky
  • HOQU_rus
  • Грека через реку
  • CryptoCapitalNews
  • Finom Blockchain Blog
  • Запас прочности Биткоина.
  • Everex
  • Человеческий
  • GoldMineCoin
  • Kolbasska
  • Блог Трейдера
  • TombCare
  • CREDO - СИСТЕМА ОПЛАТЫ СЛЕДУЮЩЕГО ПОКОЛЕНИЯ
  • Сатош
  • G-obmen
  • Revolutionising the 3 core functions of finance.
  • TH
  • Заработок в интернете
  • Privateers.Life - Пиратская ММО на Blockchain
  • Все просто! Все слухи про Биткоин

Календари

  • Календарь блокчейн мероприятий

Категории

  • Кошельки
  • GPU майнеры
  • CPU майнеры
  • Драйверы
    • AMD
    • Nvidia
  • Прошивки ASIC майнеров
    • SHA2
    • Scrypt
    • X11
  • Прошивки видеокарт
  • Утилиты
  • Софт для трейдинга
  • Софт для мониторинга



Фильтр по количеству...

Найдено 19 результатов

  1. Я хотел бы программно получить историю торговли за последние 10 дней с биржи Bittrex? В API-интерфейсе bittrex, используя функцию getmarkethistory, я могу получить только последние 200 транзакций. Но мне нужно рассчитать объем покупки и объем для продажи отдельно за последние 10 дней, и я не могу найти функции в API-интерфейсе bittrex, которые могут мне помочь. Смотрел также API coinmarketcap.com и bitcoinwisdom, но я не нашел решения для этой задачи. Может кто-нибудь сталкивался? Спасибо.
  2. EXCEL ORDERS CONTROL. Табличный продукт, позволяющий автоматизировать взаимодействие с биржей BITTREX через API и наглядно показывающий состояние всех ордеров на одной странице. Таблица производит расчет стоп-лосов и трех уровней тейк-профита с автоматической отправкой на биржу по нажатию одной кнопки. На биржу можно даже не ходить. Продавать, покупать, видеть все прибыли/убытки, множество графиков на отдельной странице и много другое - все это уже реализовано в данном продукте. ПОСМОТРИТЕ короткое двухминутное видео как все просто: Буду рад, если Вы воспользуетесь моим продуктом. В телеграм-чате идет обсуждение по добавлению нового функционала и обсуждение возможностей. Вместе мы сила и добьемся хороших результатов ! Присоединяйтесь к нам ! Канал Telegram: https://t.me/exorol Живой чат проекта https://t.me/joinchat/GciNpA7Km8O4EnXKvTtlgQ Видео инструкции по работе с продуктом смотрите на нашем YouTube-канале: https://www.youtube.com/channel/UCimimaqU1vM3dH8qQmL5Ihw ПОСМОТРИТЕ КОРОТКОЕ ВИДЕО ФУНКЦИОНАЛА: Работа с ордерами на вкладке "Портфель": https://youtu.be/8vVaUB08a8E Работа с графиками: https://youtu.be/wt8U4ScwUHI Торговля из Табличного процессора Excel Orders Control: https://youtu.be/ew1Ha2pmZPs PDF-инструкция - http://z42.ru/subdmn/exorol/docs/ExcelOrdersControl_beta3.pdf ЗАГРУЗКА ФАЙЛОВ: Загрузить последнюю версию Табличного процессора Вы всегда можете с нашего сайта в разделе "Загрузить": http://exorol.z42.ru Социальные сети и общение: Паблик VK проекта: https://vk.com/exorol Канал Telegram: https://t.me/exorol Живой чат проекта https://t.me/joinchat/GciNpA7Km8O4EnXKvTtlgQ Работа с ордерами портфеля в EXCEL ORDERS CONTROL Все расчеты производятся автоматически в Вашей национальной валюте: EUR, USD, RUB, UAH, KZT Отправка трех ордеров на продажу лестницей нажатием одной кнопки После того, как Вы приобрели Актив на бирже, и приняли решение его продавать в соответствии с выставленными параметрами стратегии торговли Вам необходимо отправить 3 соответствующих заявки на Биржу, В целях автоматизации и ускорения этого рутинного процесса в этой таблице прописана соответствующая команда которую Вы можете запустить нажатием кнопки, расположенной строго в линии Актива. Менее чем за одну секунду на биржу отправятся три ордера на тейкпрофит. Теперь не надо в ручную рассчитывать уровни, ошибаться в цифрах и сходить с ума от восьми знаков после запятой. Таблица берет это на себя. Работа с двумя мониторами на вкладке Графики Криптовалюты: ТОРГОВЛЯ ИЗ ТАБЛИЧНОГО ПРОЦЕССОРА EXCEL ORDERS CONTROL. Покупайте и продавайте двумя кликами с легкостью прямо из калькулятора таблицы. Удаляйте и смотрите Ваши ордера. Контролируйте стакан и используйте цену прямо из него. Курс Биткоина с CoinDesk Index всегда у Вас перед глазами. НУЖНО СРОЧНО ПРОДАТЬ ВЕСЬ АКТИВ ИЛИ КУПИТЬ НА ВСЕ СРЕДСТВА ? Не медлите ! По нажатию одной кнопки, Табличный Процессор все сделает за Вас. Если Вы хотите срочно продать, то автоматически закроются открытые ордера по этому активу и он будет за несколько итераций продан по лучшему курсу. Аналогично с функцией купить. Нажав на эту кнопку будет приобретен Актив на весь свободный депозит. НОВОСТИ И СИГНАЛЫ ПРЯМО В ТАБЛИЦЕ ? Такое тоже возможно. Для этого разработан функционал и все пользователи, которые оформят подписку на получение Сигналов будут их получать прямо у себя в Таблице. Сейчас я ищу кандидата для работы с поставкой Новостей и Сигналов. Может это именно Вы ? Нужны качественные сигналы и главное желание развивать такой продукт ! У ВАС СВОЙ КАНАЛ ИЛИ ВЫ ХОЗЯИН ОБМЕННИКА ? ТОЛЬКО ДЛЯ ВАС ДЛЯ РЕКЛАМОДАТЕЛЕЙ СПЕЦИАЛЬНЫЙ ФУНКЦИОНАЛ В ТАБЛИЦЕ У КАЖДОГО ПОЛЬЗОВАТЕЛЯ ! Дайте информацию о Вашем выгодном курсе обмена или расскажите о вашей группе/канале. Вы можете разместить рекламные баннеры со ссылками в Таблице. Они обновляются автоматически и для этого не требуется скачивание новой версии. Прямо сейчас прямо сразу, во время обновления информации Ваше сообщение станет видно всем пользователям ! Более 1500 просмотров баннеров в сутки ! Посмотрите на он-лайн статистику показа банеров НАМ ДОВЕРЯЮТ ! Вирусов НЕТ Мы заботимся о своей репутации и вы всегда можете проверить наш Продукт на специализированных сервисах. Посмотрите отчет о проверке более чем 65 антивирусными программами. ОТЗЫВ ИЗВЕСТНОГО YOU-TUBE КАНАЛА ОБ ИСПОЛЬЗОВАНИИ ТАБЛИЧНОГО ПРОЦЕССОРА Мой криптовалютный портфель итоги трёх месяцев хранения. Обзор с помощью EXCEL ORDERS CONTROL - YouTube СКОРО В БЕТА 4. АВТОТОРГОВЛЯ Одновременная работа с Тейкопрофитом и стоплосом без блокировки средств на счету. В случае опускания ниже стоплосса- отправляет ордер на продажу. В случае достижения Тейкпрофита - пытается заработать больше путем сдвигания вверх стоплосса. ПОИСК ТОЧКИ ВХОДА И АВТОПОКУПКА ПРИ ПРОБИТИИ ЛИНИИ БОЛЛИНДЖЕРА Только для Вас и только начиная с БЕТА4 автопокупка Актива в режиме Автоторговли при пробитии линии Боллинджера. Это сделает Ваш вход в рынок гораздо более надежным на полном автомате. Таблица теперь сама и купит и вовремя продаст. Либо по Стоплоссу если рынок пошел против Вас либо по Тейкпрофиту, когда будет достигнут заданный Вами уровень. Также Табличный Процессор теперь может не просто продать Ваш актив, а попробовать заработать больше сдвигая автоматически вверх уровень стоплосса если на рынке идет восходящий тренд. Во время тестирования удалось на таком тренде получить в три раза большую прибыль чем без использования этой функции. БОИТЕСЬ НАЧАТЬ ? Функция Симуляция для Вас ! Теперь и режим симуляции автоторговли для выработки стратегии ! Выбрав эту функция система как будто купит для Вас 10 монет. А все остальное будет в реальном времени с биржи. Вы сможете отработать уровни стоплосса и тейкпрофита по любому активу. Поймете верно ли Ваше предположение. В КАКУЮ СТОРОНУ ПОЙДЕТ РЫНОК ? Попробуйте Симуляцию и Ваши средства останутся целыми ! Но это скоро в БЕТА4 ! ТЕЛЕГРАМ. (скоро) Оповещение в Телеграмм о наступлении различных событий. ЛОКАЛИЗАЦИЯ ПРОЕКТА На ближайшее время после выхода БЕТА4 намечено по плану локализация на несколько языков данного Табличного Процессора. Подписывайтесь на Телеграм - канал и будете всегда в курсе последних новостей. ДОПОЛНИТЕЛЬНО ОТ АВТОРА. ПРИНИМАЮ ВАШИ ЗАЯВКИ НА РАЗРАБОТКУ И ВНЕДРЕНИЕ ЛЮБОГО ФУНКЦИОНАЛА КАК НА ОСНОВЕ ТАБЛИЧНОГО ПРОЦЕССОРА ТАК И ПОЛНОСТЬЮ НОВОГО ПРОДУКТА НА БАЗЕ EXCEL. Такого Экселя Вы еще не знали !!! Контакты Автора: http://exorol.z42.ru email: eoc@z42.ru Телеграм: @selestasvz VK проекта: https://vk.com/exorol Канал Telegram: https://t.me/exorol
  3. Нужно получать актуальный курс битка не реже чем раз в минуту по API в формате json подскажите сайты которые это могут дать нашел один но там ограничение по времени не подходит
  4. Здравствуйте. Использую API Ethermine ( https://api.ethermine.org/docs/#api-Miner-miner_currentStats ) Задача получить баланс кошелька, по API получаю ответ ( запрос /miner/:miner/currentStats) и дергаю значение "unpaid", но не понимаю как его пересчитать в нормальный вид как в личном кабинете. Значения для примера: - Получаю по API: 43648507575501630 - Баланс на сайте ethermine.org : 0.04365
  5. Приветствую! Делаем проект, где у пользователей есть баланс и они могут переводить средства друг другу с баланса на баланс на нашем сайте. Создаем свой токен (ERC20) на базе эфира и нужен кошелек, который можно интегрировать с нашим сайтом, чтобы пользователи могли с кошелька завести наши токены на баланс на нашем сайте, а там уже осуществлять транзакции токенами между балансами. Смотрели метамаск, в принципе подходит, но у него нет возможности работы с токенами, там только эфир. Подскажите, есть ли подобные кошельки работающие по принципу метамаска, но где кроме эфира, можно оплачивать и получать токенами? И если нету, то как в нашем случае можно сделать интеграцию, чтобы пользователи на сайте могли оперировать токенами и все транзакции записывались бы в блокчейн?
  6. Доброго времени суток. Поскажите, пожалуйста, API для возможности вводы/вывода средств через такие платежные системы, как VISA, Qiwi, WebMoney, Yandex.Money и т.д.
  7. Хочу подружить PHP и ETH server, нужна помощь, с оплатой - нужно генерить, валидировать адреса, проверять баланс и делать отправку ETH.
  8. Blockchain API - Callback

    Добрый день! Пожалуйста подскажите, суть в следующем. Имеется 2 таблицы - в первую пишется для истории транзакций, во-второй обновляется `balance` для вывода баланса пользователя, но когда callback срабатывает, он пишет только в одну таблицу и не хочет добавлять во-вторую. Как реализовать такой механизм? Спасибо! Callback: if($_GET['confirmations'] >= 0) { $transaction_hash = $_GET['transaction_hash']; $value_in_btc = $_GET['value'] / 100000000; $user = $_GET['user']; $date = date("YmdHis"); $destination_address = $_GET['destination_address']; $stmt = $db->prepare("replace INTO invoice_payments (login, destination_address, transaction_hash, value, date) values(?, ?, ?, ?, ?)"); $stmt->bind_param("sssds", $user, $destination_address, $transaction_hash, $value_in_btc, $date); $result = $stmt->execute(); //Add balance to the database $stmt = $db->prepare("UPDATE users SET balance = balance + ? WHERE login = ?"); $stmt->bind_param("ds", $value_in_btc, $user); $result = $stmt->execute(); if($result) { echo "*ok*"; } }
  9. Здравствуйте. Я занимаюсь разработкой приложения в котором нужно подключить оплату. Задача представлена таким образом. Плательщик услуг будет иметь выбор как оплачивать, в долларах (usd) или биткоинах (btc). Ведь не у каждого пользователя будет свой bitcoin кошелек и не каждый знает что это, и нужно дать ему возможность заплатить в долларах. Но получатель должен всегда получать платежи в биткоинах btc. То есть по сути должна происходить конвертация при получении с исходной валюты и автоматически зачисляться на счет владельца кошелька в биткоинах. Кто-нибудь знает какой сервис с api дает возможность это сделать? Смотрел в сторону bitpay, но он принимает только биткоин. Okpay имеет достаточно непонятную документацию и в ней сложно разобраться. В coinbase не смог найти информацию о том, возможно ли это. Буду благодарен за любую информацию. :)
  10. Нужен сервис которому можно скормить BTC адрес, в ответ получив временный адрес для оплаты после поступления денег на временный чтобы был запрос на сайт с подтверждением оплаты. Ну и уже с временного кошелька автоматически чтобы перевело деньги на реальный кошелек. П.С. Кошельки будут пользователей Подробнее описал на тостере - https://toster.ru/q/342114
  11. Биржа Украины BTCZOO с API

    Привет всем, мой первый пост можно сказать спамерский использую в Украине www.coinessa.com Кошельки и как доска обьявлений с автоматической продажей и покупкой биткоинов там ввод и вывод на карту банка в гривне и только украинских банков. Говорят рубль будет скоро. .... но тема о том что они стартанули биржу www.btczoo.com и приглашают бета тестеров. Кто то тут подписался на закрытый бета тест? Мне интересно узнать или кто тестил API пока что 0 комисси на трейдинг. как я понял 1% на ввод фиата процессинговой кампании. не уверен нужно проверять все. Спасибо
  12. Приветствую всех заглянувших в этот топик! Нужно организовать прием оплаты в btc на сайте. Установить, обезопасить и настроить bitcoind либо api блокчайны. Выслушаю ваши предложения в лс, более подробно что надо там же.
  13. . Bitcoin Payment Gateway - Партнерская программа для веб-разработчиков - 0.50% Lifetime from each cryptocoin/bitcoin payment made by users through GoUrl Payment Gateway Website: https://gourl.io Bitcoin Affiliate Program: https://gourl.io/affiliates.html Twitter: https://twitter.com/CryptocoinAPI Simply use GoUrl Payment Gateway in your php scripts on client websites, create e-commerce plugins, web applications. GoUrl Payment Gateway will automatically track all purchases through your script/software installed on various websites with your GoUrl affiliate key and it will automatically send you 0.50% from user payment. It is easy! GoUrl Cryptocoin Gateway is an open source cryptGoUrl Cryptocoin & Bitcoin Payment Processor/Gateway is an open source crypto payment system. You are free to modify it and add new functionality - create new scripts, software, plugins/add-ons for Wordpress, Drupal, Joomla, etc with GoUrl Cryptocoin & Bitcoin Payment Processor/Gateway. Our affiliate program is Free to join and we offer lifetime cryptocoin/bitcoin affiliate revenue to Web Developers and Web Designers - earn 0.50% of the total volume of cryptocoin payments (bitcoin, litecoin, dogecoin, reddcoin, etc) made by users through your plugin/software with GoUrl Cryptocoin/Bitcoin Payment Gateway. Affiliate Statistics Example - Read more - https://gourl.io/affiliates.html .
  14. следил за историей торгов и обнаружились несостыковки, может кто то сможет объяснить. суть в слудующем: имелись такие вот предложения на продажу по ltc_usd - 1401408015.87804 ltc_usd asks : rate 10.597497, amount 35.817439 rate 10.597498, amount 0.299998 rate 10.599811, amount 0.227058 ... Никто их не трогал долгое время, затем спустя почти 50 сек добавилось одно более выгодное предложение 1401408063.53471 ltc_usd asks: rate 10.53004, amount 10.06566151 rate 10.597497, amount 35.817439 rate 10.597498, amount 0.299998 by ... Которое тут же купили ибо я его купить уже не успел. ( кстати предложения по бидам выглядели так : 1401408061.86604 ltc_usd bids: 10.530041 (amount 1.1970971), 10.53004 (amount 2.93954392), 10.530004 (amount 0.11), ... 1401408063.53474 ltc_usd bids: 10.530004 (amount 0.11) , 10.523315 (amount 0.228201), 10.516 (amount 5.46457861 by), ... ) Давайте поразбираемся по истории ордеров кто чего купил : Стакан асков выкупался так : buy amount=1.1977 by 10.53 at 1401408063 - сначала совершилась эта сделка buy amount=10.0657 by 10.53 at 1401408063 - потом эта Смотрим ещё раз в стакан asks , лучшее предложение - rate 10.53004, amount 10.06566151 А по сделкам получается всего 10.53 т.е. BTCE округлил отбросив 0.00004 или как ? ну и объём тоже "сходится" округлённо, (вторая сделка - куплено 10.0657, а предлагалось 10.06566151) Кроме того сделки по бидам тоже выглядят все как "округлённые" : sell amount=1.1971 by 10.53 at 1401408062 sell amount=1.01282 by 10.53 at 1401408062 sell amount=0.11 by 10.53 at 1401408062 sell amount=1.81672 by 10.53 at 1401408062 Магический rate 10.53 , которого не видно в стакане (но видны другие) - ты кто ? По моему может быть только два обяснения либо BTCE округляет выдаваемые данные истории. либо проворачивает внутри сделки которые не отображает. Помогите разобраться
  15. Компания Bitfork develop выпустила бесплатный сервис для получения курсов криптовалют через API. Bitfork-rate.com использует котировки и объемы торгов, от бирж по продаже Bitcoin, Litecoin, Vertcoin и других криптовалалют. Единственное требование к биржам, которое нам важно - это наличие API для получения необходимых нам данных.[/color] Вы всегда можете поднять свою копию на собственном сервере, но для вашего удобства мы выделили работающий 24/7 сервер, который способен справится с получаемыми от бирж данными. Мы следим за доступностью битфорк индекса с нашего сервера и постоянно работаем над оптимизацией его работы. Как рассчитывается индекс прочитать можно тут: http://bitfork-rate.com/ru/site/formula --- Примеры получения данных прочитать можно тут: http://bitfork-rate.com/ru/site/api
  16. Хочу организовать прием btc на сайте. Что за сайт - не спрашивать, секрет фирмы пока что. Принцип работы: - на каждый товар свой адрес кошелька - транзакции о поступлениях и баланс каждого из адреса в админке - идентификация клиента не нужна, так как он получает услугу на сайте Свой сервер есть, мощный, на линухе, с самим сайтом тоже проблем нету, нужен сам кошелек и api для работы с ним. Он-лайн кошели и сервисы для приема не подходят, т.к. нет 100% гарантий работоспособности, к примеру http://blockchain.info/ вроде как удобный, но сервер лежит с утра, и это беда. Вопросы: - если делать кошиль на самом серве, есть ли проверенные рабочие способы? - как обезопасить? можно доступ по ssh залочить на домашний ip, но дома бывает инета нету, и вывод денег в этот период невозможен - может кто делал что-то подобное?
  17. Возможно это первая часть цикла "HelloWorld для написания торгового бота", а возможно единственный HelloWorld от меня, я пока ещё точно не могу сказать. Мой пример будет на Flash ActionScript 3. Во-первых я "на ты" именно с флешем. Во-вторых, в сети уже есть множество примеров-hellworldов для Гокса и BTC-E, на многих языках, но ActionScript 3 я не видел. И в-третьих, флеш позволяет создавать интерфейсы на самый любой вкус без каких-либо ограничений. Интерфейс можно сделать удобным и практичным, а при необходимости, ещё и красивым и динамичным. Для создания бота без GUI я бы предпочёл Python или Perl. Но используя GUI, можно создать торговые инструменты с подсказками, автоматизацией и с функцией автопилота, в работу которого можно в любой момент вмешаться. По-моему, это намного лучше чем демон, работающий сам по себе. Однако, в рамках данной статьи в примерах кода пока что не будет запросов на сделки и покупку/снятие ордеров, хотя это и немаловажно, при написании бота это все-таки не самый первый этап, а некий HelloWorld №2. Решения о сделках или ордерах должны приниматься на основе данных, полученных от бирж, поэтому самый первый этап это получение данных и их обработка. А как только данные из JSON будут преобразованы в переменные и/или массивы ими можно будет свободно пользоваться в программном коде для решения необходимых задач. В качестве примера обработки спарсинного JSON, будет приведён исходный код графического отображения глубины торгов(как на mtgoxlive.com). Для этого нужно получить и спарить данные о глубине, полученные от биржи. Чтобы приведённый мной код успешно скомпилировался, я рекомендую компилировать под версию флешплеера не ниже 11.2. Под 10-ю можно даже не пытаться: там нет встроенного парсера JSON, который будет использоваться в моём коде. Также будет чуток PHP-кода. Это связано с тем, что политика безопасности флешплеера не позволяет подгрузить данные с другого домена. Это обходится с помощью вебсервера и PHP. Итак данные о глубине торгов биржи BTC-E по паре btc/usd расположены тут: https://btc-e.com/api/2/btc_usd/depth (ранее: https://btc-e.com/api/2/1/depth) Чтобы они были доступны с того же домена на котором расположен swf-файл, нужно использовать следующий php-код: <?php $q = $_GET['q']; if($q=="depth_btcusd")$page = file_get_contents("https://btc-e.com/api/2/btc_usd/depth"); if($q=="trades_btcusd")$page = file_get_contents("https://btc-e.com/api/2/btc_usd/trades"); if($q=="ticker_btcusd")$page = file_get_contents("https://btc-e.com/api/2/btc_usd/ticker"); if($q=="depth_btcrur")$page = file_get_contents("https://btc-e.com/api/2/btc_rur/depth"); if($q=="trades_btcrur")$page = file_get_contents("https://btc-e.com/api/2/btc_rur/trades"); if($q=="ticker_btcrur")$page = file_get_contents("https://btc-e.com/api/2/btc_rur/ticker"); #и т. д. echo $page; ?> Переменная q нужна, чтобы не плодить огромное количество PHP-файлов, а использовать один. Запрос на получение глубины торгов по паре btc/usd с локального домена будет выглядеть так: localhost/btce.php?q=depth_btcusd Что касается гокса, он также отдаёт данные в формате JSON немного другим способом и использование file_get_contents не прокатает, но можно сделать так: <?php $q = $_GET['q']; if($q=="depth_btcusd")$ch = curl_init('https://mtgox.com/api/0/data/getDepth.php?Currency=USD'); #и аналогично с прошлым примером curl_setopt($ch, CURLOPT_USERAGENT, "GoxFlashViewer public alpha"); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); $page=curl_exec($ch); curl_close($ch); echo $page; ?> В результате, на своём хосте мы получим способ выдачи и разметку JSON в абсолютно том же виде, как и для BTC-E. Для меня это было немаловажно т.к. к тому времени, как я прикрутил cURL с своему Nginx(без Apache), код для графического представления глубины для BTC-E уже был написан. Далее приведу исходник флешки, снабжённый некоторыми комментариями в функции, строящей график, обрабатывая полученные данные: package { import flash.display.StageAlign; import flash.display.StageScaleMode; import ru.exdeath.as3gui.WindowSkin; //классы Window и WindowSkin написаны мной; их код также будет приведён import flash.display.Sprite; import ru.exdeath.as3gui.Window; import flash.system.Security; import flash.events.Event; import flash.net.URLLoader; import flash.net.URLRequest; import flash.display.MovieClip; import flash.text.TextField; /** * @author exdeath */ [sWF(width="700", height="580", frameRate="60", backgroundColor="#ffffff")] public class btce extends Sprite{ public function btce() { //отключаем изменение маштабирования //при изменении размера рабочей области: stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; var loadComplete:Boolean=false; var request_depth:URLRequest = new URLRequest("http://localhost/btce.php?q=depth_btcusd"); var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, completeHandler); loader.load(request_depth); var txt:TextField = new TextField(); txt.selectable=false; this.addChild(txt); try { loader.load(request_depth); } catch (error:ArgumentError) { txt.text="An ArgumentError has occurred."; } catch (error:SecurityError) { txt.text="A SecurityError has occurred."; } var n:uint=0; addEventListener(Event.ENTER_FRAME, onEnterFrame); function onEnterFrame(event:Event):void{ if(!loadComplete){ txt.text="Загрузка."; for(var i:uint=0;i<n%3;i++)txt.appendText("."); n++; } } function completeHandler(event:Event):void { loadComplete=true; txt.text="done"; var BtceDepth:Object = JSON.parse(loader.data); var BtceAsks:Array=BtceDepth.asks; var BtceBids:Array=BtceDepth.bids; creatDepthTxt(); createDepthGraph(); function creatDepthTxt():void{ var depthTxt:Window=new Window(450,300,null,"Стакан BTC-e BTC/USD"); addChild(depthTxt); var asksField:TextField=new TextField(); var bidsField:TextField=new TextField(); depthTxt.box.addChild(asksField); depthTxt.box.addChild(bidsField); bidsField.x=200; asksField.width=bidsField.width=200; asksField.height=bidsField.height=300; asksField.border=bidsField.border=true; asksField.text="Предложение:\n"; bidsField.multiline=true; bidsField.htmlText="Спрос:<br>"; for (var i in BtceAsks){ asksField.text+=BtceAsks[i][1]+" по "+BtceAsks[i][0]+"\n"; } for (i in BtceBids){ if(BtceBids[i][1]>10.0)bidsField.htmlText+="<font color='#ff0000'>"+BtceBids[i][1]+" по "+BtceBids[i][0]+"</font><br>"; else bidsField.htmlText+=BtceBids[i][1]+" по "+BtceBids[i][0]+"<br>"; } } function createDepthGraph():void{ var depthGraphSkin:WindowSkin=new WindowSkin(); var depthGraph:Window=new Window(500, 300, depthGraphSkin,"Глубина торгов BTC-e BTC/USD"); addChild(depthGraph); //сдвигаем окно из нуля, чтобы за ним было видно предыдущее depthGraph.x=100; depthGraph.y=200; //рисуем оси координат var x0:Number=250; var y0:Number=290; depthGraph.box.graphics.lineStyle(1); depthGraph.box.graphics.moveTo(x0, 0); depthGraph.box.graphics.lineTo(x0, 300); depthGraph.box.graphics.moveTo(0, y0); depthGraph.box.graphics.lineTo(500,y0); //устанавливаем значения //1px=0.01$ //1px=25btc var stepX:Number=.01; var btcStep:Number=25; //узнаём крайнии значения //trace(BtceBids[0][0],BtceAsks[0][0]); //вычисляем среднее значение, там будет центр var middle:Number=(BtceBids[0][0]+BtceAsks[0][0])/2; trace(middle); var AsksVector:Vector.<Number>=new Vector.<Number>(250); var BidsVector:Vector.<Number>=new Vector.<Number>(250); //пробегаемся по ордерам for (var i in BtceAsks){ //смотрим //цена=BtceAsks[i][0];количество=BtceAsks[i][1]; //прибавляем количество к соотв.значениям for (var j in AsksVector){ if(BtceAsks[0][0]+j*stepX>BtceAsks[i][0])AsksVector[j]+=BtceAsks[i][1]; } } //аналогично для Bids for (i in BtceBids){ for (j in BidsVector){ if(BtceBids[0][0]-j*stepX<BtceBids[i][0])BidsVector[j]+=BtceBids[i][1]; } } //рисуем график depthGraph.box.graphics.lineStyle(2); depthGraph.box.graphics.moveTo(x0, y0); for (j in AsksVector){ //trace(AsksVector[j]); depthGraph.box.graphics.lineTo(x0+j+1, y0-int(AsksVector[j]/btcStep)); } //для Bids depthGraph.box.graphics.moveTo(x0, y0); for (j in BidsVector){ depthGraph.box.graphics.lineTo(x0-j, y0-int(BidsVector[j]/btcStep)); } //рисуем деления колва биткоинов //пока статично, потом сделать опционально depthGraph.box.graphics.lineStyle(1,0xff0000); var valuesY:Vector.<TextField>=new Vector.<TextField>(7); for(i=0;i<7;i++){ depthGraph.box.graphics.moveTo(x0-3,y0-(i+1)*40); depthGraph.box.graphics.lineTo(x0+3,y0-(i+1)*40); valuesY[i]=new TextField(); depthGraph.box.addChild(valuesY[i]); valuesY[i].x=x0+4; valuesY[i].y=y0-(i+1)*40-8; valuesY[i].text=(i+1)+"k"; valuesY[i].selectable=false; valuesY[i].textColor=0xff0000; } //считаем сколько требуется значений //деление будет указывать каждое целое значение курса //т.к. пока всё статично, можно заранее сказать, что 500*0.01$=5$ var valuesXN:int; valuesXN=4; //указываем значение курса в нуле var currentCostTF:TextField=new TextField(); depthGraph.box.addChild(currentCostTF); currentCostTF.text=BtceBids[0][0]+" "+BtceAsks[0][0]; currentCostTF.x=x0+10; currentCostTF.y=y0-20; currentCostTF.textColor=0xff0000; currentCostTF.selectable=false; //рисуем деления var valuesX:Vector.<TextField>=new Vector.<TextField>(valuesXN); //вычисляем местоположение самого левого деления и его значение //значение: var valueMin:uint=int(middle-2.5)+1; //местоположение: var valueMinX:Number=(int(middle-.5)-middle+1.5)*100; var valueXcurrent:Number; for(i=0;i<valuesXN;i++){ valuesX[i]=new TextField(); valuesX[i].selectable=false; valuesX[i].textColor=0xff0000; valueXcurrent=valueMinX+i*100; depthGraph.box.graphics.moveTo(valueXcurrent, y0-3); depthGraph.box.graphics.lineTo(valueXcurrent, y0+3); depthGraph.box.addChild(valuesX[i]); valuesX[i].text=String(valueMin+i); valuesX[i].y=y0-4; valuesX[i].x=valueXcurrent-7; } } } } } } Если вы незнакомы с синтаксисом AS3 и вам непонятна та или иная строчка, то на adobe.com есть отличнейшая документация на русском языке, к которой можно обратиться. вот что получилось(кликабельное превью): Собираюсь выложить в веб, сразу как добавляю в код поддержку всех пар BTC-E и пар гокса с наибольшими объёмами и улучшу юзабилити. Хотя, если кто-нибудь попросит, могу выложить и текущею версию. А далее время от времени планирую добавлять функционал. Буду рад любым предложениям и идеям насчёт того, что требуется реализовать. IDE на скриншоте: кроссплатформенный FDT 5 на основе Eclipse в ОС Ubuntu Linux 12.04.1 с Openbox вместо Unity. И автономный адобовский флешплеер, который можно скачать здесь: http://www.adobe.com.../downloads.html И то и другое доступно под GNU/Linux, Windows и Mac OS X; как для 32-х, так и для 64-х битных версий данных систем. Правда, для работы флешплеера на 64-битном Линуксе нужно доустановить некоторые 32-хбитные пакеты. (Какие именно можно узнать с помощью ldd) Если файл запускается из локальной файловой системы, то скорее всего нужно будет сходить в каталог: ~/.macromedia/Flash_Player/#Security/FlashPlayerTrust (GNU/Linux) C:\Users\<имя пользователя>\AppData\Roaming\Macromedia\Flash Player\#Security\FlashPlayerTrust (Windows 7) C:\Documents and Settings\<имя пользователя>\Application Data\Macromedia\Flash Player\#Security\FlashPlayerTrust (Windows XP) /Users/<имя пользователя>/Library/Preferences/Macromedia/Flash Player/#Security/FlashPlayerTrust (Mac OS X) Создать там файл с любым именем и расширением .cfg или воспользоваться уже созданным *.cfg И прописать путь к каталогу из которого запускается swf-файл У меня прописано так: //home/exdeath/Dropbox/workspace/fdt/btc/bin/ /home/exdeath/Dropbox/workspace/fdt/btc/bin/ И как и обещал привожу текущие версии моих классов Window и WindowSkin: package ru.exdeath.as3gui { import flash.text.TextField; import flash.events.MouseEvent; import flash.display.Sprite; /** * @author exdeath */ public class Window extends Sprite{ public var box:Sprite = new Sprite; private var title:Sprite = new Sprite; private var TextInTitle:TextField=new TextField(); //public var defaultSkin:WindowSkin = new WindowSkin(); public function Window(width:Number,height:Number,skin:WindowSkin=null,titletext:String=""){ //рисуем //var title:Sprite = new Sprite; if(skin==null)skin=new WindowSkin(); //var titleH:Number=20; this.addChild(title); this.addChild(box); title.graphics.beginFill(skin.titleColor,skin.titleAlpha); title.graphics.lineStyle(skin.titleBorder,skin.titleBorderColor,skin.titleBorderAlpha); title.graphics.drawRect(0, -skin.titleH, width, skin.titleH); title.graphics.endFill(); box.graphics.beginFill(skin.boxColor,skin.boxAlpha); box.graphics.lineStyle(skin.boxBorder,skin.boxBorderColor,skin.boxBorderAlpha); box.graphics.drawRect(0,0,width,height); box.graphics.endFill(); //сдвигаем на высоту title this.y+=skin.titleH; //делаем окошки перетаскиваемыми title.addEventListener(MouseEvent.MOUSE_DOWN, mousePress); title.addEventListener(MouseEvent.MOUSE_UP, mouseRelease); function mousePress(e:MouseEvent):void{ startDrag(); } function mouseRelease(e:MouseEvent):void{ stopDrag(); } //помещаем в верхний слой, когда активно //при клике по окну, поднимаем его наверх (a=при нажатии по title; b=при нажатии по всему окну) //потом надо будет сделать булеву переменную в WindowSkin addEventListener(MouseEvent.MOUSE_DOWN, win2top); //b /* title.addEventListener(MouseEvent.MOUSE_DOWN, win2top); //a doubleClickEnabled = true; addEventListener(MouseEvent.DOUBLE_CLICK, win2top); */ //создаём текстовое поле, в котором будет отображаться название окна title.addChild(TextInTitle); TextInTitle.selectable=false; TextInTitle.textColor=skin.textInTitleColor; TextInTitle.text=titletext; TextInTitle.x=0;//skin.titleH;//отступ для красоты TextInTitle.y=-skin.titleH; TextInTitle.width=this.width; } private function win2top(e:MouseEvent):void { parent.setChildIndex(this, parent.numChildren-1); } } } package ru.exdeath.as3gui { /** * @author exdeath */ public class WindowSkin extends Object{ public var titleH:Number=15; public var titleColor:Number=0x000000; public var titleAlpha:Number=1; public var titleBorder:Number=1; public var titleBorderColor:Number=0x000000; public var titleBorderAlpha:Number=1; public var boxColor:Number=0xFFFFFF; public var boxAlpha:Number=1; public var boxBorder:Number=1; public var boxBorderColor:Number=0x000000; public var boxBorderAlpha:Number=1; public var textInTitleColor:Number=0xFFFFFF; } }
  18. Развитие данного направления скорее всего продолжится когда закончится золотая биткоиноасиковская лихорадка. PoolSwitcher - управление сgminer-ом и одновременная работа с несколькими пулами по заданным алгоритмам, основной особенностью которых является постепенное увеличение количества отправляемых решений на отслеживаемые пулы с PPLNS или Score режимом выплат. В различных режимах работы это позволяет повысить эффективность майнинга в тех случаях когда пулу попадаются длинные блоки с количеством шар больше в два, три и более раз значения сложности. PoolSwitcher + CGMINER 1.1.3.1 - http://turbobit.net/m957wungjgz7.html (в архиве cgminer-3.1.0-win32 и mining_proxy 1.5.2) Описание основных особенностей advanced режима работы программы - https://forum.btcsec...-poolswitchera/ Другие подробности и варианты работы устаревших версий программы - https://forum.btcsec...к-продолжается/ 0.4.2 - http://turbobit.net/1widqlo8l8ci.html (в архиве cgminer-2.8.7-win32) В программе реализована функция донейта в размере 0,83% - через каждые 10 ч. на 10 мин. запускается второй сgminer с воркером создателя программы. Буду рад увидеть любые предложения и замечания по увеличению качества и расширению функционала программы. Для желающих поддержать проект - BTC: 1Grt8FNEJYawuVWLzBm3Z6ux6yNwK92ASk
  19. bitcoind и с чем его едят

    У биткоина есть как графический интерфейс именумеый bitcoin-qt так и консольный, bitcoind. Если первый удобен для использования человеком, то без текствого довольно сложно сделать интернет магазин или какой-либо иной сервис, принимающий биткоины в качестве оплаты. О нем и пойдет речь. Для работы нужно запустить один экземпляр bitcoind в качестве демона, чтобы он работал в качестве полноценного узла сети и отдавать ему команды с помощью еще одной копии bitcoind. Взаимодействие между ними происходит по JSON-RPC через 8332й tcp порт. Для того чтобы они узнавали и доверяли друг другу нужно задать rpcpassword, который прописывается в файле ~/.bitcoin/bitcoin.conf как rpcpassword=blah-blah-blah. Если у вас нет такого файла то его нужно создать. Туда же можно прописать и другие параметры из тех, что указываются при запуске демона. Полный список параметров можно получить запустив bitcoind с ключем --help или -?, вот пример того, что мы увидим в ответ: Bitcoin version 0.5.2-beta Usage: bitcoind [options] bitcoind [options] <command> [params] Send command to -server or bitcoind bitcoind [options] help List commands bitcoind [options] help <command> Get help for a command Options: -conf=<file> Specify configuration file (default: bitcoin.conf) -pid=<file> Specify pid file (default: bitcoind.pid) -gen Generate coins -gen=0 Don't generate coins -min Start minimized -datadir=<dir> Specify data directory -timeout=<n> Specify connection timeout (in milliseconds) -proxy=<ip:port> Connect through socks4 proxy -dns Allow DNS lookups for addnode and connect -port=<port> Listen for connections on <port> (default: 8333 or testnet: 18333) -maxconnections=<n> Maintain at most <n> connections to peers (default: 125) -addnode=<ip> Add a node to connect to -connect=<ip> Connect only to the specified node -noirc Don't find peers using internet relay chat -nolisten Don't accept connections from outside -nodnsseed Don't bootstrap list of peers using DNS -banscore=<n> Threshold for disconnecting misbehaving peers (default: 100) -bantime=<n> Number of seconds to keep misbehaving peers from reconnecting (default: 86400) -maxreceivebuffer=<n> Maximum per-connection receive buffer, <n>*1000 bytes (default: 10000) -maxsendbuffer=<n> Maximum per-connection send buffer, <n>*1000 bytes (default: 10000) -upnp Attempt to use UPnP to map the listening port -paytxfee=<amt> Fee per KB to add to transactions you send -daemon Run in the background as a daemon and accept commands -testnet Use the test network -debug Output extra debugging information -logtimestamps Prepend debug output with timestamp -printtoconsole Send trace/debug info to console instead of debug.log file -rpcuser=<user> Username for JSON-RPC connections -rpcpassword=<pw> Password for JSON-RPC connections -rpcport=<port> Listen for JSON-RPC connections on <port> (default: 8332) -rpcallowip=<ip> Allow JSON-RPC connections from specified IP address -rpcconnect=<ip> Send commands to node running on <ip> (default: 127.0.0.1) -keypool=<n> Set key pool size to <n> (default: 100) -rescan Rescan the block chain for missing wallet transactions SSL options: (see the Bitcoin Wiki for SSL setup instructions) -rpcssl Use OpenSSL (https) for JSON-RPC connections -rpcsslcertificatechainfile=<file.cert> Server certificate file (default: server.cert) -rpcsslprivatekeyfile=<file.pem> Server private key (default: server.pem) -rpcsslciphers=<ciphers> Acceptable ciphers (default: TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!AH:!3DES:@STRENGTH) -? This help message Вот описание некоторых из них: -conf - позволяет задать файл конфигурации отличный от ~/.bitcoin/bitcoin.conf -pid - указать файл, в который будет писаться pid процесса демона -gen - после старта начать майнить биткоины (он это будет пытаться делать на cpu, что крайне неэффективно) -gen=0 - не майнить биткоины (если в файле конфигурации указано иное) -datadir= - использовать вместо ~/.bitcoin/ указанный путь -timeout= - таймаут tcp соединения -proxy=<ip:port> - соединятся через указанный SOCKS4 прокси-сервер, например через tor -port= - использовать указанный порт вместо 8333 -maxconnections= - ограничить число одновременных соединений, по умолчанию 125 -addnode= - так же подключится и к указанному узлу, тут полезно указать адреса пулов для ускорения транзакций, можно использовать несколько раз -connect= - подключится только к указанному узлу, полезно, если вы хотите загрузить блоки с другого компьютера в локальной сети не загружая интернет-канал -noirc - не использовать irc для поиска узлов и анонса собственного адреса (например irc запрещен хостингом, что встречается довольно часто) -nolisten - не принимать входящие соединения -nodnsseed - не использовать DNS для поиска узлов -upnp - Пытаться использовать UPnP для того чтобы пробросить порт. Полезно, если вы заначены роутером, использующим внешний ip и поддерживающим UPnP. Не нужно, если вы имеете внешний ip напрямую и не имеет смысла, если ваш роутер не имеет внешнего ip. -paytxfee= - установить размер комиссию (в биткоинах), собственная логика клиента имеет приоритет над этим значением -daemon - запускаться в фоне -testnet - использовать тестовую сеть -debug - писать отладочную информацию -logtimestamps - снабжать лог временными метками -printtoconsole - использовать stdout вместо debug.log -rpcuser= и -rpcpassword - имя пользователя и пароль для JSON-RPC, как для лемона так и для клиента -rpcport= - использовать для JSON-RPC порт, отличный от 8332 -rpcallowip= - разрешить принимать команды с указанного ip, по умолчанию команды принимаются только с 127.0.0.1, можно использовать несколько раз -rpcconnect= - отправлять команды на указанный узел а не на 127.0.0.1 -keypool= - сгенерировать указанное количество ключей при старте, по умолчанию - 100 -rescan - перечитать цепочку блоков, полезно если у вас поврежден blkindex.dat или есть зависшие транзакции в кошельке Так же в 0.6 версии появилась довольно полезная опция -blocknotify=, которая запускает указанную команду при получении нового блока, например для обработчика платежей. Большую часть перечисленных параметров можно указывать и в bitcoin.conf. При работе в режиме демона клиент использует множество "виртуальных" аккаунтов, для каждого из которых ведет свой учет баланса. Такая логика может существенно упростить создание какого-либо сервиса, поскольку достаточно привязать пользователей сервиса к аккаунтам bitcoind. Баланс на аккаунте может быть как положительным так и отрицательным. Аккаунт, используемый по умолчанию - "" (пустая строка). После запуска демона должно пройти какое-то время, чтобы он проинициализировался и начал ожидать команд. Список команд, которые можно отдать демону, можно получить, запустив bitcoind с аргументом help (без --). Вот пример вывода: backupwallet <destination> encryptwallet <passphrase> getaccount <bitcoinaddress> getaccountaddress <account> getaddressesbyaccount <account> getbalance [account] [minconf=1] getblockcount getconnectioncount getdifficulty getgenerate gethashespersec getinfo getmemorypool [data] getnewaddress [account] getreceivedbyaccount <account> [minconf=1] getreceivedbyaddress <bitcoinaddress> [minconf=1] gettransaction <txid> getwork [data] help [command] keypoolrefill listaccounts [minconf=1] listreceivedbyaccount [minconf=1] [includeempty=false] listreceivedbyaddress [minconf=1] [includeempty=false] listsinceblock [blockid] [target-confirmations] listtransactions [account] [count=10] [from=0] move <fromaccount> <toaccount> <amount> [minconf=1] [comment] sendfrom <fromaccount> <tobitcoinaddress> <amount> [minconf=1] [comment] [comment-to] sendmany <fromaccount> {address:amount,...} [minconf=1] [comment] sendtoaddress <bitcoinaddress> <amount> [comment] [comment-to] setaccount <bitcoinaddress> <account> setgenerate <generate> [genproclimit] settxfee <amount> signmessage <bitcoinaddress> <message> stop validateaddress <bitcoinaddress> verifymessage <bitcoinaddress> <signature> <message> Описание некоторых комманд: backupwallet - сделать резервную копию wallet.dat encryptwallet - зашифровать кошелек (необратимо!) getaccount - Узнать, какому аккаунту принадлежит указанный адрес. Пареметр - bitcoin адрес, результат - строка с именем аккаунта. getaddressesbyaccount - Вывести список адресов, принадлежащих указанному аккаунту. Параметр - имя аккаунта, результат - список bitcoin-адресов в формате JSON. getaccountaddress - Сгенерировать еще один адрес для указанного аккаунта. Параметр - имя аккаунта, результат - строка с bitcoin-адресом. getbalance - Вывести баланс аккаунта для указанного количества подтверждений. Первый необязательный параметр - имя аккаунта, второй необязательный параметр - количество подтверждений, результат - положительное или отрицательное число c 8ю знаками после точки. getblockcount - Вывести текущее колиечество блоков. Результат - целое число. getconnectioncount - Вывести текущее количество соединений. Результат - целое число. getdifficulty - Вывести текущую сложность. Результат - число с 8ю знаками после точки. getgenerate - Вывести состояние генерации. Результат - true или false. getinfo - Вывести ряд текущих параметров в виде JSON-массива. getnewaddress - Сгенерировать еще один адрес для указанного аккаунта. Параметр - имя аккаунта, результат - строка с bitcoin-адресом. getreceivedbyaccount - Вывести общее количество принятых средств на аккаунт без учета отправленных. Первый параметр - имя аккаунта, второй необязательный параметр - количество подтверждений, результат - число с 8ю знаками после точки. getreceivedbyaddress - Вывести список входящих транзакций на указанный адрес. Первый параметр - bitcoin-адрес, второй необязательный параметр - количество подтверждений, результат - JSON массив с входящими транзакциями на указанный адрес. gettransaction - Вывести информацию по транзакции. help - Вывести список доступных комманд или описание команды, если она указана аргументом. listaccounts - Вывести список аккаунтов с балансом на них. Результат - JSON-массив. listreceivedbyaccount - Вывести JSON-массив с аккантами, общим количеством принятых на них средств без учета отправленных и количеством подтверждений. listreceivedbyaddress - Тожесамое, но с детализацией по bitcoin-адресам. listtransactions - Вывести список транзакций в JSON формате. move - Перевести средства с одного аккаунта на другой без осуществления транзакции в сети. sendfrom - Отправить сресдва с указанного аккаунта. sendmany - Отправить сресдва с указанного аккаунта на множество адресов. sendtoaddress - Отправить средства с аккаунта по умолчанию. setaccount - Сделать адрес принадлежащим аккаунту. setgenerate - Включить/выключить генерацию блоков. Параметр - true или false, не возвращает ничего. settxfee - Установить комиссию. signmessage - Подписать сообщение, полезно для подтверждения принадлежности адреса. stop - Остановить демон. До полной остановки должно пройти какое-то время. validateaddress - Проверить правильность адреса. Так же возвращает аккаунт, которому он принадлежит, если таковой имеется. verifymessage - Проверить подпись сообщения.
×