Вернуться   Биткоин Форум > Обслуживание Обсуждение
11 декабря 2013, 2:04:32 AM   # 1
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru

Это будет считаться не рабочий код. Есть по крайней мере, 8 торговых двигателей некоторые полные и некоторые нет. Есть также несколько сотен настраиваемых параметров. Я ни в коей мере предлагая поддержку, помощь или подразумевая, или с указанием каких-либо гарантий для этого. Jude использует двигатель в течение некоторого времени, и я считаю, что делает небольшую прибыль. Я использовал различные двигатели и переписываю торговать на микро и макро рулонов рулонов с разной степенью успеха.  

Я оставил много нот, как это код мастер-файл с большим количеством незаконченных произведений.

Если я забыл удалить какую-либо личную информацию или ключи, я был бы признателен PM против расходного хака.

Наиболее важные параметры обмена, btcekey btcesecret и вниз к основанию клавишу GOX и секрет. Существует синтезированная функция, которая будет просто распечатать вывод и не должен выполнять какую-либо сделки.

Если вы не можете выяснить, что делает этот код: только предположить, что это крадет все ваши Bitcoins.  

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

Кроме того: сообщение превышает максимально допустимую длину (64000 символов).

Так что в двух постах.

Код:
<до>

////////////////////////////////////////////////// //////////////////
// Программы
////////////////////////////////////////////////// //////////////////
// A - Валюта Арбитраж, выберите UtoU или BtoB арбитраж через L
// B - Портфолио Балансировка, Поддержание 50% двух валют во все времена
// C - Пользовательский трейлинг / опережения продать / продам бот для GNA
// D - купить вниз, купить 1/2 спреда каждый .5 падение и продавать 1 каждый $ 1 выигрыш
// E - Прокатное продать / продать на спадах и шипы V1,1.1,1.2, V2,2.1
// F - 24 часов высокие / низкие балансировка боты, поддерживать (высокие последний) / (высокий-низкий) баланс в долларах США и (последний низкий) / (высокий-низкий) в BTC
// G - EMA вызвало прокатке с долей Фибоначчи и высокой / низкой комбинации балансировки с микро-торговли повторной балансировки.
// H - Пользовательский Роллинг боты на основе динамических порогов
// I - Micro-Trade качению бота с переменной покупки и продажи заказов и итераций
// J - Revamped микро-перебалансировка двигатель добавлен в качестве опции - баланс в зависимости от расстояния до высокой цены

////////////////////////////////////////////////// //////////////////
// Advance и хвост последняя цена с заказами (комиссионный + прибыль / 2)
// Установить порядок составляет мин < все < Максимум
// Покупать цена падает
// Sell, как рост цен
// использование тройной EMA + последняя для определения тенденций
// USE расстояние от высокой / низкой, чтобы определить средства, чтобы продать / купить
// ПРИМЕЧАНИЕ Купить в последнем - пороговое значение (сумма мин (maxtrade, восстановить баланс в процентах)
// заказы NUM ПРИМЕЧАНИЕ устанавливается для покупки и продажи, использование $ incriment разницы заказа
// Примечание 100 заказов продать будет price1 + +0,01 + +0,01 и т.д.
// Не продавать, если последний > EMA1 > EMA2 > EMA3
// Не покупать, если последний < EMA1 < EMA2 < EMA3
// Использование микро-заказы, чтобы играть на пиках и спадах

////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// USER КОНФИГУРИРУЕМЫЙ
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
//ФУНКЦИИ
$ DEBUG = TRUE; // Если программа для печати информации отладки
$ Симулировать = FALSE; // Запускается в режиме моделирования, НЕТ ТОРГИ НЕ СДЕЛАНЫ только ПЕЧАТЬ ВЫХОД
$ Обмен = "G"; // Выбор обмена для запуска на
если ($ обмен == "G") {$ GOX = TRUE; $ = FALSE, BTC-E;}
если ($ обмен == "Е") {$ = TRUE, BTC-E; $ GOX = false;}

////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// Выбор ENGINE
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
$ ENGINE = "M";
// H - Hybrid Engine
// E - EMA двигатель
// S - статический двигатель
// B - Заполненный двигателя
// FF - 50/50 Баланс двигателя
// JOSH - Джош Торговой система
// JUDE - Джуд Торговая система
// M - Micro-ролл двигатель
// F

$ ГИБРИД = $ СТАТИЧЕСКОЕ = $ ЕМА = $ БАЛАНС = $ ДЖОШ = $ FF = $ F = FALSE;
Переключатель ($ ДВИГАТЕЛЬ) {
случай "H":
$ HYBRID = TRUE;
ломать;
случай "E":
$ EMA = TRUE;
// EMA раз использовать
$ Ema1Time = 5;
$ Ema2Time = 11;
$ Ema3Time = 22;
$ Ema1M = 2 / ($ ema1Time + 1);
$ Ema2M = 2 / ($ ema2Time + 1);
$ Ema3M = 2 / ($ ema3Time + 1);
ломать;
случай "S":
$ STATIC = TRUE;
ломать;
случай "M":
$ MICRO = TRUE;
////////////////////////////////////////////////// //////////////////
// НАСТРОЙКИ MICRO-ТРЕЙД
//array(0.023360861,0.035041292,0.040881508,0.055482046,0.06862253,0.089793311,0.113519186,0.146552904,0.186795638,0.239950723); //0,1,1.5,N1+N2/2,N2+N3/2 ... Modified Фибоначчи делится на 10 раундов.
/ *
Метод выдумка - вычисляет Фибоначчи акций
1,2,3,5,8,13 мультипликатором X = 1 / (сумма всех чисел) * {X} серии
 
Метод выдумка ручной - вычисляют Фибоначчи акции с делителем для n3 +.
$ MicroBuyAmountMultiplier = engineMultiplier ( 'fibtame', 4, $ microBuyDivisor);
n1 = 1, n2 = n1 + n1 / х, n3 = n1 + n2 / х, и т.д..
 
Метод пау - экспоненциальный рост путем итерации
2 ^ х, 2 ^ х + 1
 
Метод случайного - вычисляет случайные числа 

Метод двойного - удваивает количество каждого заказа
1,2,4,8,16

Метод сов - делает дугу, используя итерацию и соз
 
Метод экос - делает обратную дугу, используя итерацию и АСОсы
 
 здесь способ дуги, начните .5 двигаться до 1 двигаться вниз к .5 движению вверх для остатка
 4 балла, 1 половина, 2 полно, 3 составляет половину, 4 является последним, который должен быть ручным,

* /
$ MicroSellDivisor = 10; // количество ордеров на продажу на место
$ MicroBuyDivisor = 10; // Количество заказов на покупку, чтобы разместить
$ MicroIteration = 0,5; // USD $ итерации для нескольких заказов
$ MicroAmount = +0,01; // Количество BTC в мини купить / продать тур
$ MicroProfit = +0,005; // Порог прибыли, это минимальная прибыль на сделку, чтобы сделать,
$ MicroStopLoss = 1; // Стоп-лосс процентов, продать в убыток
$ MicroReBuy = 0,10; // Изменение цены на ребай после потери
$ MicroBuyAmountMultiplier = engineMultiplier ( 'двойной', 2, $ microBuyDivisor);

если ($ GOX) {
$ MicroSellDivisor = 10; // количество ордеров на продажу на место
$ MicroBuyDivisor = 10; // Количество заказов на покупку, чтобы разместить
$ MicroIteration = 0,5; // USD $ итерации для нескольких заказов
$ MicroAmount = +0,01; // Количество BTC в мини купить / продать тур
$ MicroProfit = 0,004; // Порог прибыли, это минимальная прибыль на сделку, чтобы сделать,
$ MicroStopLoss = 1; // Стоп-лосс процентов, продать в убыток
$ MicroReBuy = 0,1; // Изменение цены на ребай после потери
$ MicroBuyAmountMultiplier = engineMultiplier ( 'Rand', 2, $ microBuyDivisor);
}

$ MicroSellCancel = TRUE; // Отменить заказы каждый продавать или хранить старые заявки на продажу?
////////////////////////////////////////////////// //////////////////
// НЕ USER КОНФИГУРИРУЕМЫЙ
$ EngineProfit = $ microProfit;
$ EngineAmount = $ microAmount;
$ EngineSellDivisor = $ microSellDivisor;
$ EngineBuyDivisor = $ microBuyDivisor;
$ CountMicroBuy = $ countMicroSell = 1;
$ CountMicroBuyTotal = $ countMicroSellTotal = 0;
$ MicroBuy = $ microSell = FALSE;
$ MicroThreshold = 0,60; // динамический порог определяется произвольно.
$ MicroTicker = 0; // Хранит последнюю цену, используемую для расчета мини-сделок
ломать;
случай "B":
$ BALANCE = TRUE;
$ BalanceBuy = $ balanceSell = FALSE;
$ BalanceAmount = 0,025; // Количество микро-балансовых торгов
$ BalanceThreshold = +0,05; // .05 = 5% // Перебалансирование leway - значение 1, чтобы отключить
ломать;
случай "FF":
$ BALANCE = TRUE; 
$ FF = TRUE;
ломать;
случай "JOSH":
$ JOSH = TRUE;
$ JoshAmount = 5; // В BTC
$ JoshThreshold = 5; // В USD
$ JoshStopLoss = +0,05; // в процентах
$ JoshReBuy = +0,05; // в процентах
ломать;
случай "JUDE":
$ JUDE = TRUE;
ломать;
}

//Остановить потери
$ = Остановки массива ( 'цель', 'бегущей строки', 'над', 'под', 'количество' => 0);

// Максимальное количество игры (это играть не инвестиции), это все-таки технически бета-идея

$ MaxUSD = 500; // Максимальное количество долларов США для использования -> включает в себя B * провел последнюю цену!
$ MaxBTC = 1; // Максимальное количество BTC использовать

////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// Настройки Основного двигателя торговли
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
$ AmountTrade = 0,256; // maxpertrade ток двигателя 20130530
$ SellDivisor = 3; // Количество ордеров на продажу на место 
$ BuyDivisor = 3; // Количество ордеров на покупку на месте
$ TradeIteration = 0,10; // Если не использовать сложные проценты, сумма различаются между сделками при использовании продать / купить делитель выше 1
$ CompoundInterest = FALSE; // Использование $ incriment или прибыль ^ (1 + х)
$ Порог = 0,60; // Пороговое изменение цены НЕИСПОЛЬЗУЕМЫЙ как это установлено позже.
$ ProfitTrade = 0,025; // Порог прибыли, это минимальная прибыль на сделку, чтобы сделать,
$ ThresholdOrders = 0; // При использовании триггеров порядка на основе против статического или EMA


$ MaxPendingOrders = 0; // Держите это много заказов активным при отмене
$ MaxOrders = 100; // $ maxOrders = макс заказы тянуть должны быть установлены? 100?

// Отправка отчетов по электронной почте при размещении заказов
$ EmailRCPTo = "SET IN KEY.PHP инклюдник";
$ BtceKey = ''; // ваш API-ключ
$ BtceSecret = ''; // Ваш Секретный ключ

$ = Почтовое сообщение "BTCbot торговля на {$ обмена}";
 
// Время между запусками 
$ Nanosleep = 500000000; // наносекунд
$ SleepCancel = +500000; // наносекунд спать между отмен заказов
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// END USER КОНФИГУРИРУЕМЫЙ
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////

$ MinBidBTC = +0,01; // Минимальных Заявок обмена будет принимать (BTC-E Mins)
$ EngineAmount = (мин ($ microAmount / $ microSellDivisor, $ microAmount / $ microBuyDivisor) > $ MinBidBTC? $ MicroAmount: $ minBidBTC);
// DEBUG нужно добавить множитель массив низкого до этого


если ($ обмена == "E") $ exchangeCommision = .002; // Обмен комиссионный процент (в 1 - комисся в десятичной системе) 
если ($ обменной == "G") $ exchangeCommision = .0001; // GOx Commision

// BTC-E Валютные пары & ставка задать имена в формате JSON
$ Btcesymbol = массив ( "btc_usd", "ltc_btc", "ltc_usd");
$ Btcebidorask = массив ( "торги", "спрашивает");
если (@ $ BTC-E) $ exchangeBuySell = массив ( "купить", "продать");
если (@ $ GOX) $ exchangeBuySell = массив ( "ставка", "спросить");

$ ExecuteTrade = $ postTrade = FALSE;
$ ПРОДАМ = $ BUY = TRUE;
$ DOT = $ STOPLOSS = FALSE; // довольно выход \ п BOOL

// СЧЕТЧИКИ
$ CountIteration = 1; // Итерация Счетчик
$ CountOrder = 0; // счетчик заказа
$ CountError = 0; // Счетчик ошибок
$ CountDuplicate = 0; // Дубликат последняя цена счетчика
$ CountBuys = $ countSells = 0; // Счетчик скорость покупки / incriments на скорости покупки, так что это не количество ордеров на покупку, но количество ставок купить пытался
$ CountTrades = 0; // счетчик выполнения торговли
$ CountTickers = 0;
$ Ь = $ s = 0;
$ CountInValid = $ countValid = 0;
$ CountCancelled = $ countFilledBuy = $ countFilledSell = $ countFilled = $ countFilledIterationBuy = $ countFilledIterationSell = 0;

// Тикеры
$ Тикер = $ tickerLast = $ тикеров = массив ();

// получить incriment из нашего файла
$ Nonce = readInc (); // + 1;

// порядок отмены таймера
$ = Время начальный промежуток ();
$ DateStart = Дата ( 'Ymd Н: я: s');


////////////////////////////////////////////////// //////////////////
// Вычислить $ microBuyAmountMultiplier $ engineMultiplier
////////////////////////////////////////////////// //////////////////
функционировать engineMultiplier ($ метода = NULL, $ итерации = NULL, $ делитель = NULL)
{
        Переключатель ($ метод)
        {
                дело «рэнд»:
                        для ($ = 1; $ я<= $ Делитель; $ я ++) {
                                $ Массив [$ я] = Rand (1, $ итерации);
                        }
                        $ Возврата = engineMultiplierPercentage ($ массив);

                ломать;
                случай «приврать»:
                        $ Первый = 1; $ Второй = 2;
                        $ Массив [0] = $ первый;
                        $ Массив [1] = $ второй;
                        для ($ I = 2; $ я<= $ Делителя + 1; $ я ++) {
                                $ = $ Конечного первый + второй $;
                                $ Первый = $ второй;
                                $ Второй = $ окончательным;
                                $ Массив [$ я] = $ окончательным;
                        }
                        $ Возврата = engineMultiplierPercentage ($ массив);
                ломать;
                случай "fibtame":
                        $ Первый = 1; $ = $ Второй первый + $ первый / $ итерации;
                        $ Массив [0] = $ первый;
                        $ Массив [1] = $ второй;
                        для ($ I = 2; $ я<= $ Делителя + 1; $ я ++) {
                                $ = $ Конечные первый + $ второй / $ итерации;
                                $ Первый = $ второй;
                                $ Второй = $ окончательным;
                                $ Массив [$ я] = $ окончательным;
                        }
                        $ Возврата = engineMultiplierPercentage ($ массив);
                ломать;
        случай «ехр»:
$ Массив [1] = 1;
                        $ Массив [2] = 2;
                        для ($ I = 3; $ я<= $ Делитель; $ я ++) {
                                $ Массив [$ я] = пау ($ я, $ итерации);
                        }
                        $ Возврата = engineMultiplierPercentage ($ массив);
                ломать;
случай «двойной»:
$ Массив [0] = 1;
                        $ Массив [1] = 2;
                        для ($ I = 2; $ я<= $ Делитель; $ я ++) {
                                $ Массив [$ я] = $ массив [$ я-1] * 2;
                        }
                        $ Возврата = engineMultiplierPercentage ($ массив);
ломать;
                случай «сов»:
// DEBUG затруднительное так массив 0 существует.
                        $ Массив [1] = -1,5;
                        // print_r ($ массив);
                        для ($ I = 3; $ я<= $ Делителя + 1; $ я ++) {
                                $ Массив [$ I-1] = ABS (COS ($ массив [1] + ((3 / ($ делителем-1)) * ($ 2-я))));
                        }
                        $ Массив [1] = ABS (COS (-1.5));
                        // print_r ($ массив);
                        $ Возврата = engineMultiplierPercentage ($ массив);
                ломать;
        }
        вернуть $ вернуться;
}
Функция engineMultiplierPercentage ($ массив)
{
        $ Процентах = 1 / array_sum ($ массив);
        Еогеасп ($ массив в $ ключ => $ Значение)
        {
                $ Возврата [$ ключ] = значение $ * $ процент;
        }
        вернуть $ вернуться;
}


////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
//////////////////////////////////////////////// Begin Infinite Loop.//////////////////////////////////////////////// ////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
в то время как ( «ответ на жизнь вселенная и все»! = «41») {
//include('key.php ');
writeInc ($ нонс); // Записывает нонс переменного
$ CountIteration ++; // incriment счетчик итераций
$ CountDuplicate = $ countOrder = $ countError = 0; // Новый запуск сброса счетчика дублированный
$ ExecuteTrade = FALSE; // сброс торговли BOOL для следующего запуска

$ Возврата = $ Orderlist = $ TradeHistory = $ скорость = $ сумма = $ = тип массив (); // удалить предыдущие значения из торговых массивов
////////////////////////////////////////////////// //////////////////
// данные опроса
////////////////////////////////////////////////// //////////////////
        $ TickerOld [ 'тикер'] [ 'последний'] = @ $ тикер [ 'тикер'] [ 'последний']; // изменяет тикер к последнему тикеру
$ Тикер = массив ();
        $ Сна = Rand (1, 10); // установить таймер случайного сна
в то время как (пусто ($ тикер)) {
если (@ $ GOX) {
$ Тикер = json_decode (отправить ( 'https://data.mtgox.com/api/2/BTCUSD/money/ticker'), TRUE);
$ Тиккера [ 'тиккера'] [ 'последняя'] = $ тиккера [ 'данные'] [ 'последняя'] [ 'значение'];
}
если (@ $ BTC-E) $ тикер = json_decode (отправить ( 'https://btc-e.com/api/2/btc_usd/ticker'), TRUE);
если (! @ $ тикер) {
print_r ($ возврата);
$ Тикер = $ возврата = $ OrderList = $ TradeHistory = массив ();
// $ сон = рандов (6, 36) * (++ $ countError);
$ CountError ++;
печать "\ nНомер ошибки потянув данных Error #: {$ countError} \ п.";
сна (5);
Продолжать;
}  
////////////////////////////////////////////////// //////////////////
// Дубликат Ticker
                если ($ tickerOld [ 'тикер'] [ 'последний'] == $ тикер [ 'тикер'] [ 'последний']) {
$ Тикер = $ возврата = $ OrderList = $ TradeHistory = массив ();
если ($ countDuplicate == 59 печати "\ п.": "" печать);
если ($ countDuplicate == 59 $ countDuplicate = 0: NULL);
$ DOT = TRUE;
$ CountDuplicate ++;
// Статический таймер
time_nanosleep (0, $ nanosleep);
Продолжать;
}
////////////////////////////////////////////////// //////////////////
// Вычислить SMA & EMA
если ($ тикер [ 'тикер'] [ 'последний'] > 0 && $ TickerOld [ 'тикер'] [ 'последний']! == $ тикер [ 'тикер'] [ 'последний'] && $ EMA) {// позже тест дублировать тикер никогда не должен быть проверен.
$ countTickers ++;
$ тиккеры [$ countTickers] = $ тикер [ 'тикер'] [ 'последний'];
$ EMA1 = $ ema2 = $ EMA3 = NULL; // = $ countTickers
$ EMA1 = array_sum (array_slice ($ бегущие строки, -1, 1, TRUE)) * $ ema1M + (array_sum (array_slice ($ тикеры, ($ ema1Time * -1) -1, $ ema1Time, правда)) / $ ema1Time) * (1- $ ema1M);
$ Ema2 = array_sum (array_slice ($ бегущие строки, -1, 1, TRUE)) * $ ema2M + (array_sum (array_slice ($ тикеры, ($ ema2Time * -1) -1, $ ema2Time, правда)) / $ ema2Time) * (1- $ ema2M);
$ EMA3 = array_sum (array_slice ($ бегущие строки, -1, 1, TRUE)) * $ ema3M + (array_sum (array_slice ($ тикеры, ($ ema3Time * -1) -1, $ ema3Time, правда)) / $ ema3Time) * (1- $ ema3M);

если ($ countTickers < $ Ema1Time + 1) {//&& $ EMA) {
если (@ $ DEBUG && $ DOT) {печать "\ п"; $ DOT = FALSE; }
печать «Строительство EMA1 - Ожидание»;
печать ($ ema1Time + 1) - $ countTickers;
печать «больше тиккеров \ п»;
} ELSEIF ($ countTickers < $ Ema2Time + 1) {//&& $ EMA) {
если (@ $ DEBUG && $ DOT) {печать "\ п"; $ DOT = FALSE; }
печать «Строительство EMA2 - Ожидание»;
печать ($ ema2Time + 1) - $ countTickers;
печать «больше тиккеров \ п»;
} ELSEIF ($ countTickers < $ Ema3Time + 1) {//&& $ EMA) {
если (@ $ DEBUG && $ DOT) {печать "\ п"; $ DOT = FALSE; }
печать «Строительство EMA3 - Ожидание»;
печать ($ ema3Time + 1) - $ countTickers;
печать «больше тиккеров \ п»;

если ($ countTickers < $ Ema3Time + 1) {// Если мы не построили EMA3, и мы используем ЕМА
$ TickerOld [ 'тикер'] [ 'последний'] = $ тикер [ 'тикер'] [ 'последний'];
$ Тикер = $ возврата = $ OrderList = $ TradeHistory = массив ();
Продолжать; // перезапустить цикл, пока мы не строить EMAS
}
// Если мы не будем выполнять торговлю, распечатайте тикер, а затем продолжить
//если (
// ($ тикер [ 'тикер'] [ 'последний'] >= $ MicroTicker - $ microThreshold && $ Тикер [ 'тикер'] [ 'последний'] <= $ MicroTicker + $ microThreshold) // Мы не будем выполнять microtrade
//&& ($ EMA! (($ EMA1 > $ ema2 && $ ema2 > $ EMA3) && $ ПРОДАВАТЬ) // Мы не будем покупать
// && (($ EMA1 < $ ema2 && $ ema2 < $ EMA3) && $ ПРОДАВАТЬ) // Мы не будем продавать
//) // END EMA
// || ($ BALANCE 
// && $ CurrentBalanceUSD- $ reBalanceUSD > 0
// && $ CurrentBalanceBTC- $ reBalanceBTC > 0)
//) // END БАЛАНС
//
// && $ TickerOld [ 'тикер'] [ 'последний']! == $ тикер [ 'тикер'] [ 'последний'] // Тикер не DUP (никогда не должны быть проверены здесь)
// && $ Тикер [ 'тикер'] [ 'последний'] > 0 // Тикер правомочно (никогда не должен быть протестирован здесь)
// && $ countIteration > 2) {// Это допустимая итерация
// $ TMP4 = круглый ($ тикер [ 'тикер'] [ 'последний'], 2); // круглый тикер
// если ($ countDuplicate >= 59-6) {
// для ($ countDuplicate = $ countDuplicate; $ countDuplicate < 59; $ CountDuplicate ++) {
// Распечатать ".";
//}
// печать "\ п";
// $ countDuplicate = 0;
//}
// печать "{$ TMP4}";
// $ countDuplicate = $ countDuplicate + 6;
// $ tickerOld [ 'тикер'] [ 'последний'] = $ тикер [ 'тикер'] [ 'последний'];
// $ тикер = $ возврата = $ OrderList = $ TradeHistory = массив ();
// $ tmp1 = $ tmp2 = $ tmp3 = $ TMP4 = NULL;
//}

} // ПОДРАЗУМЕВАЕМЫХ ELSE продолжить обработку
} // END в то время как (пусто ($ тикер))
////////////////////////////////////////////////// //////////////////
// Опрос Все данные для торговли
// сброс точек данных и тянуть все сразу (GOX должно быть исключением из ограничения скорости.)
$ Тикер = $ возврата = $ OrderList = $ TradeHistory = массив (); // поле пустым тиккеры
в то время как (пусто ($ тикер) || пустой ($ возврата) || пустой ($ OrderList) || пустой ($ TradeHistory)) {
если ($ BTC-E) {
$ Тикер = json_decode (отправить ( 'https://btc-e.com/api/2/btc_usd/ticker'), TRUE); // Код BTC-E
$ Orderlist = json_decode (btce_query ( "OrderList", массив ( "активный" => 1, "пара" => "Btc_usd")), TRUE);
$ TradeHistory = json_decode (btce_query ( "TradeHistory", массив ( "подсчет" => $ maxOrders, "пара" => "Btc_usd")), TRUE);
$ Возврата = json_decode (btce_query ( 'GetInfo'), TRUE); // Информация счета BTC-E
}
если ($ GOX) {
$ Тикер = json_decode (отправить ( 'https://data.mtgox.com/api/2/BTCUSD/money/ticker'), TRUE); // GOX Ticker
$ Тиккера [ 'тиккера'] [ 'последняя'] = $ тиккера [ 'данные'] [ 'последняя'] [ 'значение'];
$ Тикер [ 'тикер'] [ 'купить'] = $ тикер [ 'данные'] [ 'купить'] [ 'значение'];
$ Тикер [ 'тикер'] [ 'продать'] = $ тикер [ 'данные'] [ 'продать'] [ 'значение'];
$ Тиккера [ 'тиккера'] [ 'высокий'] = $ тиккера [ 'данные'] [ 'высокий'] [ 'значение'];
$ Тиккера [ 'тиккера'] [ 'низкий'] = $ тиккера [ 'данные'] [ 'низкий'] [ 'значение'];
$ Возврата = json_decode (mtgox_query ( 'BTCUSD / деньги / информация'), TRUE); // GOX счета информация
(? $ Возврата [ 'результат'] == "успех" $ возвращение [ 'успех'] = 1: $ возвращение [ 'успех'] = 0); // Переводим GOX для BTC-E
$ Возврата [ 'возврата'] [ 'средства'] [ 'BTC'] = $ возврата [ 'данных'] [ 'Кошельки'] [ 'BTC'] [ 'Баланс'] [ 'значение']; // Переводим GOX к BTC-E
$ Возврата [ 'возврата'] [ 'деньги'] [ 'USD'] = $ вернуть [ 'данные'] [ 'Кошельки'] [ 'USD'] [ 'Баланс'] [ 'значение']; // Переводим GOX к BTC-E
$ OrderList = json_decode (mtgox_query ( 'BTCUSD / деньги / заказы'), TRUE);
$ TradeHistory = json_decode (mtgox_query ( 'BTCUSD / деньги / сделки / загрузить'), TRUE); // GOX счета информация
$ TradeHistory [ 'возвращение'] = $ TradeHistory [ 'данные'];
снята с охраны ($ TradeHistory [ 'данные']);
Еогеасп ($ TradeHistory [ 'возвращение'], как $ ключ => $ Значение) {
$ TradeHistory [ 'возвращение'] [$ ключ] [ 'типа'] = $ TradeHistory [ 'возвращение'] [$ ключ] [ 'trade_type'];
$ TradeHistory [ 'возвращение'] [$ ключ] [ 'скорость'] = $ TradeHistory [ 'возвращение'] [$ ключ] [ 'цена'];
$ TradeHistory [ 'возвращение'] [$ ключ] [ 'Order_ID'] = $ ключ; // PHP Примечание:
}
}
// Проверяем тикер изменен
если (! @ $ тикер ||! @ $ возврат ||! @ $ OrderList ||! @ $ TradeHistory || @ $ вернуться [ 'успех']! == 1) {
print_r ($ возврата);
$ Тикер = $ возврата = $ OrderList = $ TradeHistory = массив ();
// $ сон = рандов (6, 36) * (++ $ countError);
$ CountError ++;
печать "\ nНомер ошибки потянув данных Error #: {$ countError} \ п.";
сна (5);
}
}
// Переводит данные GOx в BTC-й Формат
если (@ $ GOX) {
$ OrderList [ 'успех'] = ($ OrderList [ 'результат'] == "успех" $ OrderList [ 'успех'] = 1: $ OrderList [ 'успех'] = 0);
$ OrderList [ 'возвращение'] = массив ();
$ OrderList [ 'возвращение'] = $ OrderList [ 'данные'];
$ OrderList [ 'данные'] = NULL;
}

////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// Пороги установки для сбрасывая сделок
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
если ($ тикер [ 'тикер'] [ 'последний'] > 1) {// если тикер действует
если (@ $ GOX) {
если ($ возврата [ 'данные'] [ 'Trade_Fee'] > 0) $ exchangeCommision = $ возврата [ 'данные'] [ 'Trade_Fee'] / 100; // GOx Commision
}
$ Порог = CEIL ($ тиккера [ 'тиккера'] [ 'последняя'] * ((1 / (1- $ exchangeCommision) / (1- $ profitTrade / 2)) -1) * 100) / 100;
$ MicroThreshold = CEIL ($ тиккера [ 'тиккера'] [ 'последняя'] * ((1 / (1- $ exchangeCommision) / (1- $ microProfit / 2)) -1) * 100) / 100;
если (! @ $ microTicker || @ $ microTicker < 1) {
$ MicroTicker = $ тикер [ 'тикер'] [ 'последний'];
$ MicroThresholdBuy = $ microTicker + $ microThreshold; // Купить Над Последний создать отставая покупает - Micro-Dip
$ MicroThresholdSell = $ microTicker - $ microThreshold; // Продажа ниже прошлого, чтобы создать опережение продает - Micro-Spike
}
если (! @ $ thresholdBuy || @ $ thresholdBuy < 1) $ thresholdBuy = $ тиккера [ 'тиккера'] [ 'последняя'] + $ порога; // Мы устанавливаем заявки на покупку, когда цена увеличивается (задний покупка)
если (! @ $ thresholdSell || @ $ thresholdSell < 1) $ thresholdSell = $ тиккера [ 'тиккера'] [ 'последняя'] - $ порога; // Мы устанавливаем ордера на продажу, когда цена снижается (опережения продать)
} Еще {выход; }

////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// Расчет стоимости, балансы и резюме печати информации.
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// необходимо DEBUG для расчета стоимости в итерациях $ sellDivisor для сумм, которые будут торговаться.
// DEBUG СПРАВОЧНЫЕ НАПОЛНЕННЫЕ ЗАКАЗЫ! Предотвратить расчета стоимости на основе заполненных заявок на продажу!  
$ BTCO = $ USDO = 0;

$ SellOrders = $ buyOrders = массив (); // пустой книги заявок для каждого нового запуска (Infinite Loop выпуск)
$ Ь = $ s = 0; // FIXED очистка заказа, если нет открытых заказов
если ($ OrderList [ 'успех'] > 0) {
Еогеасп ($ OrderList [ 'возвращение'], как $ ключ => $ Значение) {
если (@ $ GOX) {
$ Tmp1 = $ значение [ 'сумма'] [ 'значение'];
$ Значение [ 'сумма'] = NULL;
$ Значение [ 'сумма'] = $ tmp1;

$ Значение [ 'скорость'] = $ значение [ 'цена'] [ 'значение'];
$ Tmp1 = NULL; $ Tmp1 = $ значение [ 'сумма'] * $ значение [ 'скорости'];
$ Tmp1 = NULL;
}
если ($ значения [ 'типа'] == $ exchangeBuySell [1]) {
$ BTCO = $ BTCO + $ значение [ 'сумма']; // BTC = сумма заявок на продажу и суммы // PHP Фатальная ошибка: неподдерживаемые типы операндов в /arbot/buydownbotBTCG.php в строке 281
$ sellOrders [$ s] = $ значение [ 'скорости'];
$ S ++;
}
// если ($ значение [ 'типа'] == $ exchangeBuySell [1] && $ Значение [ 'сумма'] == $ engineAmount) {
// $ reserveBTC = ($ reserveBTC - $ значение [ 'сумма'] >= 0? $ ReserveBTC - $ значение [ 'сумма']: 0); //
//
//}
если ($ значения [ 'типа'] == $ exchangeBuySell [0]) {
$ USDO = $ USDO + $ значение [ 'сумма'] * $ значение [ 'скорости']; // USD = сумма от суммы заявки на покупку * ставка
$ buyOrders [$ Ь] = $ значение [ 'скорости'];
$ Б ++;
}
// если ($ значение [ 'типа'] == $ exchangeBuySell [0] && $ Значение [ 'сумма'] == $ engineAmount) {
// // FIXED резерв доллар не был убывающий
// $ reserveUSD = ($ reserveUSD - $ значение [ 'сумма'] * $ значение [ 'скорость']  >= 0? $ ReserveUSD - $ значение [ 'сумма'] * $ значение [ 'скорости']: 0); // USD = сумма от суммы заявки на покупку * ставка
//}
}
/ * Если ($ countIteration < 3 && $ ЗАКАЗОВ) {
rsort ($ buyOrders); // ReverseSort заказы и выбросьте ключи
сортировать ($ sellOrders); // Сортировка заказов и выбросите ключи
если (! @ $ thresholdBuy) $ thresholdBuy = (COUNT ($ sellOrders) <= $ ThresholdOrders? @ $ SellOrders [$ countOrder]: @ $ sellOrders [$ thresholdOrders]); // Заполнит XTH заказа перед торгами
если (! @ $ thresholdSell) $ thresholdSell = (COUNT ($ buyOrders) <= $ ThresholdOrders? @ $ BuyOrders [$ countOrder]: @ $ buyOrders [$ thresholdOrders]); // Заполнит XTH заказа перед торгами
} * /
Теперь // решаемые это установлено в пороговом разделе.
} Еще {
если ($ OrderList [ 'ошибки']! == "нет заказов") {
print_r ($ OrderList);
}
}
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// Вычислить ПЕРЕВОД
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
$ USDB = $ BTCB = $ USDT = $ BTCT = $ BTC = $ USD = 0;
// Вычислить TOTAL мы имеем заказы и баланс и USD / последний BTCTotal
если ($ GOX) $ BTCT = $ возвращающие [ 'возвращение'] [ 'средства'] [ 'BTC'] + $ возвращение [ 'возвращение'] [ 'средства'] [ 'USD'] / $ тикер [ 'тикер' ]['последний'];
если ($ BTC-E) $ BTCT = $ возврата [ 'возврата'] [ 'средства'] [ 'BTC'] + $ BTCO + $ возвращающие [ 'возвращение'] [ 'фондов'] [ 'USD'] / $ тикер [ 'тикер'] [ 'последний'] + $ USDO / $ тикер [ 'тикер'] [ 'последний'];
// Вычислить TOTAL USD мы имеем в ордеров на покупку, продажу заказов, BTC баланс, USD Баланс
если ($ GOX) $ USDT = ($ возвращаемые [ 'возвращение'] [ 'средства'] [ 'BTC']) * $ тикер [ 'тикер'] [ 'последний'] + $ возвращение [ 'возвращение'] [» средства '] [' USD '];
если ($ BTC-E) $ USDT = ($ возвращаемые [ 'возвращение'] [ 'средства'] [ 'BTC'] + $ BTCO) * $ тикер [ 'тикер'] [ 'последний'] + $ USDO + $ вернуться [ 'возвращение'] [ 'средства'] [ 'USD'];
// Вычислить БАЛАНС мы имеем заказов и средств BTCBalance USDBalance
если ($ GOX) $ BTCB = $ возвращающие [ 'возвращение'] [ 'средства'] [ 'BTC'];
если ($ BTC-E) $ BTCB = $ возврата [ 'возврата'] [ 'средства'] [ ''] BTC + $ BTCO;
если (GOX $) $ USDB = $ возвращение [ 'возвращение'] [ 'средств'] [ 'USD'];
если ($ BTC-E) $ USDB = $ возврата [ 'возврата'] [ 'деньги'] [ 'USD'] + $ USDO;
// Вычислить сумму ТОРГОВЫХ мы имеем в фондах и заказах BTCTrade USDTrade
$ BTC = ($ BTCB >= $ MaxBTC? $ MaxBTC - $ BTCO: $ BTCB - $ BTCO);
$ USD = ($ USDB >= $ MaxUSD? $ MaxUSD - $ USDO: $ USDB - $ USDO);

////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// Рассчитать стоимость BTC BTCBalance
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
$ DollarCostTotal = $ dollarCostShares = $ idealSellRate = $ idealSellAmount = $ dollarCostAverage = $ countBuys = 0;
$ CountFilledIterationBuy = $ countFilledIterationSell = $ countFilledIteration = 0;
$ CostBalance = массив ( "общий" => 0, "акция" => 0, "средний" => 0, "идеальный" => 0);
$ CostFilled = массив ( "общий" => 0, "акция" => 0, "средний" => 0, "идеальный" => 0);
$ ProfitFilled = массив ( "общий" => 0, "акция" => 0, "средний" => 0, "идеальный" => 0);

$ BTCremaining = $ BTCB;
если ($ BALANCE) $ BTCremaining = $ BTC * ($ currentBalanceBTC- $ reBalanceBTC);

Еогеасп ($ TradeHistory [ 'возвращение'], как $ ключ => $ Значение) {
// использование DEBUG этой информации для расчета прибыльных сделок / затраты / прибыли
если ($ значение [ 'типа'] == $ exchangeBuySell [0] && $ BTCremaining >= $ MinBidBTC) { 
$ CostBalance [ 'всего'] = $ costBalance [ 'всего'] + $ значение [ 'скорости'] * $ значение [ 'сумма'];
$ CostBalance [ 'акции'] = $ costBalance [ 'акции'] + $ значение [ 'сумма']; // $ amountTrade [0]; Всего акции не анализировали / спред
$ BTCremaining = $ BTCremaining - $ значение [ 'сумма'];
$ CountBuys ++;
}
/ *
{
"Успех": 1,
"вернуть":{
"166830": {
"Пара": "btc_usd",
«Тип»: «продать»,
"Количество": 1,
"Скорость": 1,
"Order_id": 343148,
"Is_your_order": 1,
"Метка": 1342445793
}
}
} * /
// совместимость GOX DEBUG
если (@ $ ordersPlaced && array_key_exists ($ значение [ 'order_id'], $ ordersPlaced)) {// PHP Примечание: Undefined индекс: order_id в /arbot/buydownbotBTCG.php на линии 532
$ FilledOrders [$ значение [ 'order_id']] = массив (); // Определить массив 
$ FilledOrders [$ значение [ 'order_id']] = $ ordersPlaced [$ значение [ 'order_id']]; // Сохраняет информацию порядка в массиве
$ OrdersFilledIteration [$ countIteration-1] = массив (); // Определить последний массив итерации
$ OrdersFilledIteration [$ countIteration-1] [$ значение [ 'order_id']] = массив (); // Определить последний массив итерации
$ OrdersFilledIteration [$ countIteration-1] [$ значение [ 'order_id']] = $ ordersPlaced [$ значение [ 'order_id']]; // Сохраняет информацию порядка в массиве
снята с охраны ($ ordersPlaced [$ значение [ 'order_id']]);
$ countFilled ++; $ countFilledIteration ++;

если ($ значения [ 'типа'] == $ exchangeBuySell [0]) {
$ CostFilled [ 'всего'] = $ costFilled [ 'всего'] + $ значение [ 'скорости'] * $ значение [ 'сумма'];
$ CostFilled [ 'акции'] = $ costFilled [ 'акции'] + $ значение [ 'сумма']; // $ amountTrade [0]; Всего акции не анализировали / спред
$ countFilledBuy ++; $ countFilledIterationBuy ++;
}
если ($ значения [ 'типа'] == $ exchangeBuySell [1]) {
$ ProfitFilled [ 'всего'] = $ profitFilled [ 'всего'] + $ значение [ 'скорости'] * $ значение [ 'сумма'];
$ ProfitFilled [ 'акции'] = $ profitFilled [ 'акции'] + $ значение [ 'сумма']; // $ amountTrade [0]; Всего акции не анализировали / спред
$ countFilledSell ++; $ countFilledIterationSell ++;
}
}
}
если (@ $ costBalance [ 'акции'] > 0) {
$ CostBalance [ 'средний'] = $ costBalance [ 'общий'] / $ costBalance [ 'акции']; // Общая стоимость / количество акций цена покупки
$ CostBalance [ 'идеал'] = (($ costBalance [ 'всего']) / (1- $ exchangeCommision) / (1- $ exchangeCommision) / (1- $ engineProfit)) / $ costBalance [ 'акции']; / / Средняя стоимость + UtoB комиссионная + BtoU Commision составляет 0% ставка надувательства прибыли
$ Остановить [ 'целевого'] = $ costBalance [ 'идеального'] * 998 * .998 * (1- $ microStopLoss).
} Еще $ остановить [ 'цель'] = 0;
если (@ $ costFilled [ 'акции'] > 0) {
$ CostFilled [ 'средний'] = $ costFilled [ 'общий'] / $ costFilled [ 'акции']; // Общая стоимость / количество акций цена покупки
$ CostFilled [ 'идеал'] = ($ costFilled [ 'средний']) / (1- $ exchangeCommision) / (1- $ exchangeCommision) / (1- $ engineProfit); // Средняя стоимость + UtoB комиссионной + BtoU Commision является 0% ставка надувательства прибыли
}





////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// заголовочный блок Первичный выход
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
$ Сообщение = "\ п";
если (@ $ DEBUG && $ DOT) {печать "\ п"; $ DOT = FALSE; }
печать «\ п \ п \ п \ п \ п»;
Распечатать "************************************************ ********** \ п "; // Печать Separator
Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator
Распечатать "************************************************ ********** \ п "; // Печать Separator
печать "Начало: {$ dateStart} \ п";
// $ dateCurrent = Дата ( 'Ymd H: я: s');
печать "Текущая:" дата ( 'YMD H: я: S') "\ п";.. // Печать Separator
$ Истекшее = время () - $ начальное время;
$ Tmp1 = $ истекшее / 86400% 1;
        $ Tmp2 = $ истекшее / 3600% 24;
        $ Tmp3 = $ истекшее / 60% 60;
        $ TMP4 = $ истекшее% 60;
печать "Runtime: {$ tmp1}: Дни {$ tmp2}: H {$ tmp3}: {M $ TMP4}: S \ п";
Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator
// $ tmp1 = круглый ($ остановки [ 'цель'], 2);
$ Tmp1 = (? $ STOPLOSS "АКТИВНЫЙ": ($ остановки [ 'цель'] == 0 "НЕТ ИНВЕСТИЦИЙ": круглые ($ остановки [ 'цель'], 2)));
печать "Итерация: {$ countIteration} Код: \ $ {$ тикер [ 'тикер'] [ 'последний']} ***** StopLoss: {$ tmp1} ***** \ п"; // Печать Separator
Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator
печать «---------------- Торговля Целевая информация ---------------- \ п»;    
печать "Пороговая: Стоимость: {$ exchangeCommision}% сделки: {$} Пороговая Micro: {$ microThreshold} \ п";
если (@ $ ЗАКАЗЫ || @ $ статика) печать «Цели: За: \ $ {$ thresholdBuy} Последнее: \ $ {$ тикер [ 'тикер'] [ 'последний']} В: \ $ {$ thresholdSell} \ п ";
если ($ MICRO && ! $ STOPLOSS) печать "Микро Цели: За: \ $ {$ microThresholdBuy} Tick: \ $ {$} microTicker Under: \ $ {$ microThresholdSell} \ п";
если ($ StopLoss) печать "REBUY Цели: Over: {$ остановить [ 'над']} Tick: {$ остановки [ 'тикер']} Under: {$ остановить [ 'под']} \ п";
Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator
печать «------------------- фонды Информация ------------------- \ п»;
$ Tmp1 = круглый ($ BTCT, 2); $ tmp2 = круглый ($ USDT, 2);
печать "Cash Out: BTC: {$} tmp1 USD: \ $ {$ tmp2} \ п";
$ Tmp1 = круглый ($ BTCB, 2); $ tmp2 = круглый ($ USDB, 2);
печать "Баланс: BTC: {$} tmp1 USD: \ $ {$ tmp2} \ п";
печать "Максимумы: BTC: {$} maxBTC USD: \ $ {$ maxUSD} \ п";

 
$ EngineAmount = макс ($ BTCB, $ USDB / $ тиккера [ 'тиккера'] [ 'последняя']);
$ EngineAmount = мин ($ engineAmount, $ microAmount);
$ EngineAmount = круглый ($ engineAmount, 8);
$ Tmp1 = круглый ($ engineAmount, 2);
// DEBUG не совместим с другими двигателями, необходимых для создания tradeAmount или buyamount и sellamount.


печать "EngineAmount: {$ tmp1} продает: {$ engineSellDivisor} Покупает: {$} engineBuyDivisor прибыль: {$ engineProfit} \ п";

$ Tmp1 = круглый ($ BTC, 2); $ tmp2 = круглый ($ USD, 2);
печать "Передается: BTC: {$} tmp1 USD: \ $ {$ tmp2} \ п";
Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator
печать «------------------- Информация для заказа ------------------- \ п»;         

       печать "Open: Покупает: {$ B} продает: {$ s} \ п";
печать "Размещено: Действительно: {$ countValid} Invalid {$ countInValid} Отменено: {$ countCancelled} \ п";
печать "Выполнил: Покупает: {$ countFilledBuy} Итого: {$} countFilled продает: {$ countFilledSell} \ п";
печать "Последний запуск: Покупает: {$ countFilledIterationBuy} Итого: {$} countFilledIteration продает: {$ countFilledIterationSell} \ п";
Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator
печать «------------------- Стоимость информация ------------------- \ п»;

если (@ $ costBalance [ 'акции'] > 0) {
$ Tmp1 = круглый ($ costBalance [ 'всего'], 2);
$ Tmp2 = круглый ($ costBalance [ 'акции'], 2);
$ Tmp3 = круглый ($ costBalance [ 'средний'], 2);
$ TMP4 = круглый ($ costBalance [ 'идеал'], 2);
печать "Расходы Остаток: Всего: {$ tmp1} Акции: {$} tmp2 Средний балл: {$ tmp3} Идеальные: {$ TMP4} \ п";
$ Tmp1 = $ tmp2 = $ tmp3 = $ TMP4 = NULL;
} Еще $ costBalance [ 'идеал'] = $ тикер [ 'тикер'] [ 'последний'] * 2;
если (@ $ costFilled [ 'акции'] > 0) {
$ Tmp1 = круглый ($ costFilled [ 'всего'], 2);
$ Tmp2 = круглый ($ costFilled [ 'акции'], 2);
$ Tmp3 = круглый ($ costFilled [ 'средний'], 2);
$ TMP4 = круглый ($ costFilled [ 'идеал'], 2);
печать "Стоимость заказа: Всего: {$ tmp1} Акции: {$} tmp2 Средний балл: {$ tmp3} Идеальные: {$ TMP4} \ п";
$ Tmp1 = $ tmp2 = $ tmp3 = $ TMP4 = NULL;
}
если ((@ $ costFilled [ 'акции'] == 0) && (@ $ CostBalance [ 'акции'] == 0)) {
печать «Стоимость заказа: не занимающее какую-либо BTC \ п»;
}

Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator

печать "------------------- Информация Profit ------------------- \ п";
если ($ countIteration < 3) {
$ Прибыль = массив ( 'начальная' => Массив (= '' balanceBTC> $ BTCB, 'balanceUSD' => $ USDB "тикер => $ Тикер [ 'тикер'] [ 'последний'] = 'totalBTC'> $ BTCT, 'totalUSD' => $ USDT));
}
//

$ Прибыли [ 'купить'] = массив (= 'amountBTC'> 0, 'amountUSD' => 0);
$ Прибыли [ 'продать'] = массив (= 'amountBTC'> 0, 'amountUSD' => 0);
если (@ $ filledOrders) {
Еогеасп ($ filledOrders как $ ключ => $ Значение) {
если ($ значения [ 'типа'] == $ exchangeBuySell [0]) {
$ Прибыли [ 'купить'] [ 'amountBTC'] = $ прибыли [ 'купить'] [ 'amountBTC'] + $ значение [ 'сумма'];
$ Прибыли [ 'купить'] [ 'amountUSD'] = $ прибыли [ 'купить'] [ 'amountUSD'] + $ значение [ 'скорость'] * $ значение [ 'сумма'];
}
если ($ значения [ 'типа'] == $ exchangeBuySell [1]) {
$ Прибыли [ 'продать'] [ 'amountBTC'] = $ прибыли [ 'продать'] [ 'amountBTC'] + $ значение [ 'сумма'];
$ Прибыли [ 'продать'] [ 'amountUSD'] = $ прибыли [ 'продать'] [ 'amountUSD'] + $ значение [ 'скорости'] * $ значение [ 'сумма'];
}

}
// FIXED PHP Предупреждение: Деление на ноль в /arbot/buydownbotBTC.php на линии 659
если ($ прибыли [ 'купить'] [ 'amountBTC'] > 0) $ прибыли [ 'купить'] [ 'стоимость'] = круглый ($ прибыли [ 'купить'] [ 'amountUSD'] / $ прибыли [ 'купить'] [ 'amountBTC'], 2);
если ($ прибыли [ 'продать'] [ 'amountBTC'] > 0) $ прибыли [ 'продать'] [ 'стоимость'] = круглый ($ прибыли [ 'продать'] [ 'amountUSD'] / $ прибыли [ 'продать'] [ 'amountBTC'], 2);
}

//Первоначальный баланс
$ Tmp1 = круглый ($ прибыль [ 'начальная'] [ 'balanceBTC'], 2);
$ Tmp2 = круглый ($ прибыль [ 'начальная'] [ 'balanceUSD'], 2);
печать "начальный баланс: BTC: {$ tmp1} USD: {$ tmp2} Рейтинг: {$ прибыли [ 'начальная'] [ 'тикер']} \ п";

//Текущий баланс
$ Tmp1 = круглый ($ BTCB, 2);
$ Tmp2 = круглый ($ USDB, 2);
печать "Текущий баланс: BTC: {$ tmp1} USD: {$ tmp2} Рейтинг: {$ тикер [ 'тикер'] [ 'последний']} \ п";

// Difference
$ Tmp1 = круглый ($ USDB - $ прибыли [ 'начальная'] [ 'balanceUSD'], 2);
$ Tmp2 = круглый ($ BTCB - $ прибыли [ 'начальная'] [ 'balanceBTC'], 2);
$ Tmp3 = круглый (($ тикер [ 'тикер'] [ 'последний'] - $ прибыли [ 'начальная'] [ 'тикер']), 2);
печать "Разница: BTC: {$ tmp2} USD: {$ tmp1} Рейтинг: {$ tmp3} \ п";


если (@ $ прибыли [ 'купить'] [ 'amountBTC'] > 0) {
// BTC продажи {amountBTC} {} {costBTC TotalCost}
$ Tmp1 = круглый ($ прибыли [ 'купить'] [ 'amountBTC'], 2);
$ Tmp2 = круглый ($ прибыли [ 'купить'] [ 'стоимость'], 2);
$ Tmp3 = круглый ($ прибыли [ 'купить'] [ 'amountUSD'], 2);
печать "Trade Покупает: BTC: {$ tmp1} Рейтинг: {$ tmp2} Итого: {$ tmp3} \ п";
}
если (@ $ прибыли [ 'продать'] [ 'amountBTC'] > 0) {
// BTC продано {amountBTC} {} {costBTC totalprofit}
$ Tmp1 = круглый ($ прибыли [ 'продать'] [ 'amountBTC'], 2);
$ Tmp2 = круглый ($ прибыли [ 'продать'] [ 'стоимость'], 2);
$ Tmp3 = круглый ($ прибыли [ 'продать'] [ 'amountUSD'], 2);
печать "Trade Sells: BTC: {$ tmp1} Рейтинг: {$ tmp2} Итого: {$ tmp3} \ п";
}
// Прибыль
// продать - купить + BTCholdings * последний * комиссионный - initialBTCbalance * initialLast * комиссионные
$ Tmp1 = круглый ($ прибыли [ 'продать'] [ 'amountUSD'] - $ прибыли [ 'купить'] [ 'amountUSD'] + ($ BTCB * $ тикер [ 'тикер'] [ 'последний'] * 998. ) - ($ прибыли [ 'начальная'] [ 'balanceBTC'] * $ прибыли [ 'начальная'] [ 'тикер'] * 998), 2).
$ Tmp2 = круглый ($ USDT - $ прибыли [ 'начальная'] [ 'totalUSD'] - $ tmp1,2);
печать "Прибыль от торговли: {$ tmp1} \ п";
печать "Нереализованные Прибыль: {$ tmp2} \ п";
// BTC Оценка = пуск * BTC начать скорость - startbtc * скорость тока
$ Tmp1 = круглый ($ прибыли [ 'начальная'] [ 'totalBTC'] * $ прибыли [ 'начальная'] [ 'тикер'], 2);
$ Tmp2 = круглый ($ прибыли [ 'начальная'] [ 'totalBTC'] * $ тикер [ 'тикер'] [ 'последний'], 2);
$ TMP4 = круглый ($ tmp1 - $ tmp2,2);
печать "BTC УДОВЛЕТВОРЕНИЯ: Начало: {$ tmp1} Ток: {$ tmp2} Разница: {$ TMP4} \ п";

// Run Value = прибыль - оценка
// $ tmp1 = круглый ($ прибыли [ 'начальная'] [ 'balanceBTC'] * $ прибыли [ 'начальная'] [ 'тикер'] *. 998 + $ прибыли [ 'начальная'] [ 'balanceUSD'], 2 );
$ Tmp3 = круглый ($ USDT - $ прибыли [ 'начальная'] [ 'totalUSD'], 2);
печать "Программа Значение: {$ tmp3} \ п";
$ Сообщение = $ сообщение. "Программа Значение: {$ tmp3} \ п";
$ Tmp1 = $ tmp2 = $ tmp3 = $ TMP4 = 0;
Распечатать "------------------------------------------------ ---------- \ п "; // Печать Separator

miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator


Как заработать Биткоины?
Без вложений. Не майнинг.


11 декабря 2013, 2:05:00 AM   # 2
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Получил 1806 Биткоинов
Реальная история.





Код:
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// //////// ТОРГОВЛЯ ДВИГАТЕЛИ //////////////////////////////////////// /////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////


////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// //////// Micro-Roll ДВИГАТЕЛЬ ////////////////////////////////////// ///////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
// DEBUG $ остановка целевой тикер над под кол
// решаемый нужно записать суммы и ставки для предотвращения отмены
// DEBUG нужно установить стоп-лосс, чтобы отменить все заказы, продавать все B и перезапустить (используйте главный двигатель торговли)
// решаемой необходимость предотвращения заказов повторяющихся ставок
// решаемый нужно использовать MINI для этого раздела и MICRO для балансовых сделок или Micro для этого и баланса для баланса торгов.
// решаемые вы никогда не должны устанавливать ордера на продажу, если у вас нет заказов на покупку, вы всегда должны иметь купить заказы,
// решаемые вам не нужно, чтобы установить скорость порога * подсчитывать,
// решаемые просто использовать защиту дубликата скорости и установить на итерации выше каждый раз.
  если ($ MICRO) {
Распечатать "------------------- Micro-Trade Block ------------------- \ п";

//Распечатать "    Стоп-лосс: Under: \ $ {$ microThresholdSell} \ п";
//Распечатать "    Стоп-лосс: За: \ $ {$ microThresholdBuy} Tick: \ $ {$} microTicker Under: \ $ {$ microThresholdSell} \ п";
Распечатать "Проверка Micro-Trades: ";
если ($ STOPLOSS) {
если ($ тикер [ 'тикер'] [ 'последний'] >  $ Остановить [ 'над'] || $ Тикер [ 'тикер'] [ 'последний'] < $ Остановить [ 'под']) {
$ STOPLOSS = FALSE;
$ REBUY = TRUE;
// Ребай заказы
Распечатать "\ П *********************************************** \ N";
Распечатать "\ П ***** Stop Loss в Lifted - Торгов Возобновился ***** \ п";
Распечатать "\ П *********************************************** \ N";
$ MicroTicker = $ тикер [ 'тикер'] [ 'последний'];
$ MicroThresholdBuy = $ microTicker + $ microThreshold; // $ ставка [$ countOrder - этаж ($ tmp1 / 2)]; // array_sum ($ tmp0) / COUNT ($ tmp0); // Заполнить заказ первого $ microTicker + $ microThreshold; // * $ countMicroSell; // Продольных заказов на покупке, если это продажа заказ заливок, Купить Подробнее
$ MicroThresholdSell = $ microTicker - $ microThreshold; // Продаем снова, если последние капли ниже, чтобы создать развивающуюся продаёт - Micro-Spike
Распечатать "New-Микро Цели: Более: \ $ {$ microThresholdBuy} Tick: \ $ {$} microTicker Under: \ $ {$ microThresholdSell} \ п";
} Еще {
Распечатать "\ П *********************************************** \ N";
Распечатать "\ П ****** Stop Loss Активные - Сделки Замороженные ******* \ п";
Распечатать "\ П *********************************************** \ N";
}
}
если ($ тикер [ 'тикер'] [ 'последний'] < $ Остановить [ 'цель'] && ! $ STOPLOSS) {
$ STOPLOSS = TRUE; $ REBUY = FALSE;
Распечатать "\ П *********************************************** \ N";
Распечатать "\ П ***** Stop Loss Активированный - Торги Замороженный ***** \ п";
Распечатать "\ П *********************************************** \ N";
$ Стопы = массив ( 'цель', 'тикер => $ Тикер [ 'тикер'] [ 'последний'], 'над' => $ Тикер [ 'тикер'] [ 'последний'] * (1 + $ microReBuy), 'под' => $ Тикер [ 'тикер'] [ 'последний'] * (1- $ microReBuy), 'Количество' => $ Остановить [ 'количество'] ++);
print_r ($ остановка);
Распечатать "DEBUG Эта часть кода";
Распечатать "BTC: СТОИМОСТЬ: LAST: \ п";
Распечатать "Ребай Цели: Более: {$ остановка [ 'над']} Tick: {$ остановить [ 'тикер']} В: {$ остановить [ 'под']} \ п";
}
// $ остановить [ 'цель'] = $ costBalance [ 'идеал'] * 998 * .998 * (1- $ microStopLoss).
$ MicroBTCRemaining = $ BTCB;
$ MicroUSDRemaining = $ USDB;
////////////////////////////////////////////////// //////////////////
// Первый запуск отменить, купить и продать
если ($ countIteration < 3 && ! $ STOPLOSS) {
Распечатать "Первый запуск торгов. \ П";
$ MicroTicker = $ тикер [ 'тикер'] [ 'последний'];
// Первый запуск, отмена заказов
cancelOrders ($ exchangeBuySell [0]);
cancelOrders ($ exchangeBuySell [1]);
// Первый запуск, проверка USD, BTC, costBalance, место покупки и продажи.
// DEBUG проверки средств на покупку и продажу сделок.
если ($ BTCB >= $ MinBidBTC) {
$ ExecuteTrade = TRUE; // включить торговли
$ Tmp1 = 0;
$ MicroSellPrice = макс ($ costBalance [ 'идеал'], $ тиккера [ 'тиккера'] [ 'последняя']);
в то время как ($ tmp1 <= ($ BTCB / $ engineAmount) * $ microSellDivisor && $ microBTCRemaining >= $ MinBidBTC) {
$ Типа [$ countOrder] = $ exchangeBuySell [1];
$ Ставка [$ countOrder] = $ microSellPrice + .01 * $ tmp1;
$ Ставка [$ countOrder] = CEIL ($ ставка [$ countOrder] * 100) / 100;
$ Сумма [$ countOrder] = макс ($ BTCB / (($ BTCB / $ engineAmount) * $ microSellDivisor), $ minBidBTC); // продать все
$ Сумма [$ countOrder] = пол ($ сумма [$ countOrder] * пау (10,8)) / пау (10,8);
// $ сумма [$ countOrder] = мин ($ сумма [$ countOrder], $ BTCB);
$ Сумма [$ countOrder] = ($ BTCB < $ Сумма [$ countOrder]? $ BTCB: $ сумма [$ countOrder]); // если мы не так много B
Распечатать "Микро-продажи {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} \ п";
$ MicroBTCRemaining = $ microBTCRemaining - $ сумма [$ countOrder];
$ CountOrder ++; $ tmp1 ++;
}
$ CountMicroSellTotal ++;
}
если ($ USDB >= $ MinBidBTC * $ тикер [ 'тикер'] [ 'последний']) {
$ ExecuteTrade = TRUE; // включить торговли
$ Tmp1 = 0;
в то время как ($ tmp1 <= $ MicroBuyDivisor && $ microUSDRemaining >= ($ Тикер [ 'тикер'] [ 'последний'] - $ microThreshold- $ microIteration * $ tmp1) * $ minBidBTC) {
$ Типа [$ countOrder] = $ exchangeBuySell [0];
$ Ставка [$ countOrder] = $ тикер [ 'тикер'] [ 'последний'] - $ microThreshold - $ microIteration * $ tmp1;
$ Ставка [$ countOrder] = пол ($ ставка [$ countOrder] * 100) / 100;


$ Сумма [$ countOrder] = тах (($ engineAmount * $ microBuyAmountMultiplier [$ tmp1]), $ minBidBTC);
$ Сумма [$ countOrder] = пол ($ сумма [$ countOrder] * пау (10,8)) / пау (10,8);
Распечатать "Микро-Покупка {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} \ п";
$ MicroUSDRemaining = $ microUSDRemaining - $ сумма [$ countOrder] * $ ставка [$ countOrder];
$ CountOrder ++; $ tmp1 ++;
}
$ CountMicroBuyTotal ++;
}

}
////////////////////////////////////////////////// //////////////////
// Stop Loss и Ребай
если ($ STOPLOSS) {



если ($ BTCB > $ minBidBTC && $ STOPLOSS) {// в случае мы подняли стоп-лосс выше.
cancelOrders ($ exchangeBuySell [0]);
cancelOrders ($ exchangeBuySell [1]);
Распечатать "\ П *********************************************** \ N";
Распечатать "\ П **** Stop Loss Активированный - ликвидационный BTC **** \ п";
Распечатать "\ П *********************************************** \ N";

$ Tmp1 = $ tmp2 = 0;
в то время как ($ tmp1 <= $ MicroSellDivisor) {
$ ExecuteTrade = TRUE;
$ Типа [$ countOrder] = $ exchangeBuySell [1];
$ Ставка [$ countOrder] = $ тикер [ 'тикер'] [ 'последний'] - $ microThreshold - $ microIteration * $ tmp1;
$ Ставка [$ countOrder] = пол ($ ставка [$ countOrder] * 100) / 100;
// Если мы отменим заказы первых, мы не нуждаются в защите порядка повторного
// пока (in_array ($ ставка [$ countOrder], $ sellOrders)) {
// $ ставка [$ countOrder] = $ тикер [ 'тикер'] [ 'последний'] - $ microThreshold - $ microIteration * $ tmp2;
// $ скорости [$ countOrder] = CEIL ($ ставка [$ countOrder] * 100) / 100;
// $ tmp2 ++;
//}
$ Сумма [$ countOrder] = макс ($ BTCB / $ microSellDivisor, $ minBidBTC);
$ Сумма [$ countOrder] = пол ($ сумма [$ countOrder] * пау (10,8)) / пау (10,8);
Распечатать "Микро-продажи {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} \ п";
$ BTC = $ BTC - $ сумма [$ countOrder];
$ CountOrder ++; $ tmp1 ++;
}
$ Tmp1 = $ tmp2 = 0;
}
}
////////////////////////////////////////////////// //////////////////
// Micro-Trade Engine Primary
если ($ countIteration > 2 && ! $ STOPLOSS) {// && ! $ REBUY) {DEBUG Есть не строить код REBUY все же, использовать первичный двигатель
$ CountOrder = 0;
// Если тикер выше Buy или Sell Ниже или мы наполнили заказ (должен быть заказ на покупку!)
если ($ countFilledIterationSell > 0 || $ Тикер [ 'тикер'] [ 'последний'] > $ MicroThresholdBuy || $ Тикер [ 'тикер'] [ 'последний'] < $ MicroThresholdSell || $ countFilledIterationBuy > 0 || $ Б == 0 || $ BTC > $ MinBidBTC || $ Тикер [ 'тикер'] [ 'последний'] >= $ CostBalance [ 'идеал']) {

если ($ BTC > $ MinBidBTC || $ USDB >= ($ Тикер [ 'тикер'] [ 'последний'] - $ microThreshold) * $ minBidBTC || $ countFilledIterationBuy > 0) {
// FIXED изменение тест USD от микро суммы minbidbtc.
// FIXED измененная микро, тест, от BTC > сумма Btc > minbid продать после ошибки.
если ($ countFilledIterationBuy > 0) печать "Купить Заказать Заполненный. \ П";
если ($ USDB >= ($ Тикер [ 'тикер'] [ 'последний'] - $ microThreshold) * $ engineAmount) печать "USD Имеющиеся средства {$ USDB}. \ П";
если ($ BTC > $ MinBidBTC) печать "Средства BTC Доступно {$ BTC}. \ П";
если ($ Ь == 0) печать "Нет открытых ордеров купить. \ п"; // FIXED добавлен B == 0 будет ребай после стоплоссы.
если ($ тикер [ 'тикер'] [ 'последний'] > $ MicroThresholdBuy || $ Тикер [ 'тикер'] [ 'последний'] < $ MicroThresholdSell) печать "Порог Скрещенные. \ П";
если ($ тикер [ 'тикер'] [ 'последний'] >= $ CostBalance [ 'идеал']) печать "Баланс цены Ideal продают скрещены. Продажа. \ П";
// Итерация: 170 Код: $ 119,682 ***** StopLoss: 118 *****
// Баланс затрат: Итого: 118,1 Акции: 0,99 Средний балл: 118,95 Идеальные: 119,67
// Проверка микро-сделки: Нет Сделки.


////////////////////////////////////////////////// //////////////////
// Продам блок кода
// DEBUG изменил все суммы по BTC от BTCB, поскольку мы не отменяя заказы здесь

если ($ BTC > $ MinBidBTC || ($ Тикер [ 'тикер'] [ 'последний'] >= $ CostBalance [ 'идеал'] && $ CostBalance [ 'идеал'] > 0) || $ Тикер [ 'тикер'] [ 'последний'] < $ MicroThresholdSell) {// Продажа
// ------------------------------------------------ ----------
// ------------------- Стоимость информация -------------------
// Расходы заказа: не занимающее какую-либо BTC!
// ------------------------------------------------ ----------
// ------------------- Информация Profit -------------------
// Начальный Баланс: BTC: 0 USD: 580,06 Рейтинг: 121.26682 
// Текущий баланс: BTC: 0 USD: 580,06 Рейтинг: 121.44665
// Разница: BTC: 0 USD: 0 Рейтинг: 0.18
// Прибыль от торговли: 0 
// Нереализованные Прибыль: 0 
// BTC Оценка: Старт: 580,06 Текущая: 580,92 Разница: -0,86
// Программа Значение: 0
// ------------------------------------------------ ----------
// ------------------- Micro-Trade Block -------------------
// Проверка Micro-Trades: USD Имеющиеся средства 580,05604.
// Баланс Ideal цена продажи скрещены. Продажа.
Распечатать "\ п";
если ($ countFilledIterationBuy > 0 && ! $ MicroSellCancel) {// Мы заполнили заказы последнего запуска
НОЛЬ;
// Установить количество
$ MicroSellAmount = $ costFilled [ 'акции'] * 998; //. Лол я поставил общий // DEBUG необходимо уменьшить для комисси?
$ MicroSellAmount = $ BTC; // Мой 0,998 множитель был Acurate для многих знаков после запятой? его либо это или пол.
//Установить цену
$ MicroSellPrice = $ costFilled [ 'идеал'];

} ElseIf ($ тикер [ 'тикер'] [ 'последний'] >= $ CostBalance [ 'идеал'] || $ MicroSellCancel) {// Мы не заполнили заказы, но есть BTC или хотят отменить
// ------------------- Micro-Trade Block -------------------
// Проверка Micro-Trades: USD Имеющиеся средства 2202,166858729.
// Порог Скрещенные.
//
// Отмена заказов
//
// Отменены 0 надувательства Заказы
cancelOrders ($ exchangeBuySell [1]);
// держать количество
$ MicroSellAmount = $ BTCB; // Мы всегда продаем все BTC доступны
//Установить цену
$ MicroSellPrice = $ costBalance [ 'идеал'];
} Еще {
$ MicroSellAmount = $ BTC;
$ MicroSellPrice = $ costBalance [ 'идеал'];
}
///// ///// ПРОДАВАТЬ TRADE
$ Tmp1 = $ tmp2 = 0;
// DEBUG FIXED изменения <= к < для распродажи делителя, если 1 заказ запрашивается начальное значение равно 0, поэтому он должен быть меньше.
в то время как ($ tmp1 < $ microSellDivisor && $ microBTCRemaining >= $ MinBidBTC) {
$ ExecuteTrade = TRUE; // включить торговли
$ MicroTicker = $ тикер [ 'тикер'] [ 'последний'];
$ Типа [$ countOrder] = $ exchangeBuySell [1];
// $ ставка [$ countOrder] = $ тикер [ 'тикер'] [ 'последний'] + $ microThreshold * $ countMicroSell + $ microIteration * $ tmp1;
// CHANGELOG 31 удален множитель от скорости, добавил дубликата защиты цен
$ Ставка [$ countOrder] = $ microSellPrice + $ microIteration * $ tmp1 + $ microIteration * $ tmp2;
$ Ставка [$ countOrder] = макс ($ microSellPrice + $ microIteration * $ tmp1 + $ microIteration * $ tmp2, $ тиккера [ 'тиккера'] [ 'последняя']);
$ Ставка [$ countOrder] = ceil100 ($ ставка [$ countOrder]);
в то время как (in_array ($ ставка [$ countOrder], $ sellOrders)) {
$ Ставка [$ countOrder] = макс ($ microSellPrice + $ microIteration * $ tmp1 + $ microIteration * $ tmp2, $ тиккера [ 'тиккера'] [ 'последняя']);
$ Ставка [$ countOrder] = CEIL ($ ставка [$ countOrder] * 100) / 100;
$ Tmp2 ++;
}
$ Сумма [$ countOrder] = макс ($ microSellAmount / $ microSellDivisor, $ minBidBTC);
$ Сумма [$ countOrder] = пол ($ сумма [$ countOrder] * пау (10,8)) / пау (10,8);
Распечатать "Микро-продажи {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} \ п";
$ MicroBTCRemaining = $ microBTCRemaining - $ сумма [$ countOrder];
$ CountOrder ++; $ tmp1 ++;
}
// если ($ microBTCRemaining < 0) {
// $ сумма [$ countOrder-1] = $ Сумма [$ countOrder-1] + $ microBTCRemaining; // Debug последний заказ над количеством, не работает ...
// $ countOrder--;
//}
$ Tmp1 = $ tmp2 = 0;
$ MicroBuy = FALSE; // Мы не купить
$ MicroSell = TRUE; // Мы сделали Продать
если ($ microSell) {$ countMicroSell ++; $ countMicroSellTotal ++; $ countMicroBuy = 1;} еще {$ countMicroSell = 1;}
$ MicroThresholdBuy = ($ скорости [0] > 0? $ Ставка [0]: $ тикер [ 'тикер'] [ 'последний'] + $ microThreshold);

// array_sum ($ tmp0) / COUNT ($ tmp0); // Заполнить заказ первого $ microTicker + $ microThreshold; // * $ countMicroSell; // Продольных заказов на покупке, если это продажа заказ заливок, Купить Подробнее
$ MicroThresholdSell = $ тикер [ 'тикер'] [ 'последний'] - $ microThreshold; // Продаем снова, если последние капли ниже, чтобы создать развивающуюся продаёт - Micro-Spike
Распечатать "New-Микро Цели: Более: \ $ {$ microThresholdBuy} Tick: \ $ {$ тикер [ 'тикер'] [ 'последний']} В: \ $ {$ microThresholdSell} \ п";
} Еще печать "BTC средства не доступны. \ п";
////////////////////////////////////////////////// //////////////////
// BUY блок кода
// не FIXED нет заказов на покупку активен Если порог был перейден, и у нас есть средства или нет заказов на покупку и у нас есть средства
// DEBUG ИСПЫТАНИЕ, если мы наполнили заказ надувательства заменить все заявки на покупку.
если (($ тикер [ 'тикер'] [ 'последний'] > $ MicroThresholdBuy || $ Б == 0 || $ countFilledIterationSell > 0) && $ USDB >= ($ Тикер [ 'тикер'] [ 'последний'] - $ microThreshold) * $ minBidBTC) {//
cancelOrders ($ exchangeBuySell [0]);
Распечатать "\ п";

$ Tmp1 = $ tmp2 = 0;
в то время как ($ tmp1 < $ microBuyDivisor && $ microUSDRemaining > 0) {// DEBUG
$ ExecuteTrade = TRUE; // включить торговли
$ MicroTicker = $ тикер [ 'тикер'] [ 'последний'];
$ Типа [$ countOrder] = $ exchangeBuySell [0];
$ Ставка [$ countOrder] = $ тикер [ 'тикер'] [ 'последний'] - $ microThreshold - $ microIteration * $ tmp1;
$ Ставка [$ countOrder] = пол ($ ставка [$ countOrder] * 100) / 100;
в то время как (in_array ($ ставка [$ countOrder], $ buyOrders)) {
$ Tmp2 ++;
$ Ставка [$ countOrder] = $ тикер [ 'тикер'] [ 'последний'] - $ microThreshold - $ microIteration * $ tmp1 - $ microIteration * $ tmp2;
}
$ Сумма [$ countOrder] = макс ($ BTCB / (($ BTCB / $ engineAmount) * $ microSellDivisor), $ minBidBTC); // продать все
$ Сумма [$ countOrder] = тах (($ engineAmount * $ microBuyAmountMultiplier [$ tmp1]), $ minBidBTC);
$ Сумма [$ countOrder] = пол ($ сумма [$ countOrder] * пау (10,8)) / пау (10,8);
Распечатать "Микро-Покупка {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} \ п";
$ MicroUSDRemaining = $ microUSDRemaining - $ сумма [$ countOrder] * $ ставка [$ countOrder];
$ CountOrder ++; $ tmp1 ++;
}

$ MicroBuy = TRUE;
$ MicroSell = FALSE;
если ($ microBuy) {$ countMicroBuy ++; $ countMicroBuyTotal ++; $ countMicroSell = 1;} еще {$ countMicroBuy = 1;}
$ MicroThresholdSell = $ тиккера [ 'тиккера'] [ 'последняя'] - $ microThreshold; // $ ставка [$ countOrder - этаж ($ tmp1 / 2)]; // array_sum ($ tmp0) / счетчик ($ tmp0); // * $ countMicroBuy; // Выросшие ордера на продажу, если купить заказ заливок, продавать больше
$ MicroThresholdBuy = $ тикер [ 'тикер'] [ 'последний'] + $ microThreshold; // Купить Над Последний создать отставая покупает - Micro-Dip
$ Tmp0 = $ tmp1 = $ tmp2 = 0;
Распечатать "New-Микро Цели: Более: \ $ {$ microThresholdBuy} Tick: \ $ {$ тикер [ 'тикер'] [ 'последний']} В: \ $ {$ microThresholdSell} \ п";
} ElseIf ($ тикер [ 'тикер'] [ 'последний'] <= $ MicroThresholdBuy) {
Распечатать "Купить Порог не встречались. \ П";
} ElseIf ($ USD < ($ Тикер [ 'тикер'] [ 'последний'] - $ microThreshold) * $ engineAmount) {
Распечатать "USD Средства не доступен. \ п";
}
} Еще печать "Средства не доступны. \ п";
} Еще печать "Нет Сделки. \ п";
$ Tmp1 = $ countMicroBuy - 1;
$ Tmp2 = $ countMicroSell - 1;
Распечатать "Микро-Хиты Всего: Покупает: {$ countMicroBuyTotal} Продает: {$ countMicroSellTotal} \ п";
Распечатать "Micro-Hits Активность: Покупает: {$} tmp1 продает: {$ tmp2} \ п";
$ Tmp1 = $ tmp2 = NULL;

}
}

////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// ////// Баланс ДВИГАТЕЛЬ ////////////////////////////////////////// ///////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
// DEBUG вы можете использовать пересечение порога для них, чтобы предотвратить массовый заказ.
если ($ BALANCE) {
////////////////////////////////////////////////// //////////////////
// Вычислить расстояние, разность, портфель баланса
$ DistanceFromHigh = $ тикер [ 'тикер'] [ 'высокий'] - $ тикер [ 'тикер'] [ 'последний'];
$ DistanceFromLow = $ тикер [ 'тикер'] [ 'последний'] - $ тикер [ 'тикер'] [ 'низкий'];
$ SpreadHighLow = $ тиккера [ 'тиккера'] [ 'высокий'] - $ тиккера [ 'тиккера'] [ 'низкий'];

// Вычислить новые суммы баланса Предпочитаемых
$ ReBalanceBTC = пол (($ distanceFromLow / $ spreadHighLow) * 100) / 100;
$ ReBalanceUSD = 1- $ reBalanceBTC; // Предпочитают USD во время восстановить баланс

$ CurrentBalanceBTC = пол (($ BTCB / $ BTCT) * 100) / 100;
$ CurrentBalanceUSD = 1- $ currentBalanceBTC; // $ USDB / $ USDT;

$ ReBalanceUSDDisplay = $ reBalanceUSD * 100;
$ ReBalanceBTCDisplay = $ reBalanceBTC * 100;
$ CurrentBalanceUSDDisplay = $ currentBalanceUSD * 100;
$ CurrentBalanceBTCDisplay = $ currentBalanceBTC * 100;

Распечатать "------------ Портфолио Балансировка Информация ------------ \ п";
$ Tmp1 = круглый ($ distanceFromHigh, 2); $ tmp2 = круглый ($ distanceFromLow, 2); $ tmp3 = круглый ($ spreadHighLow, 2);
Распечатать "От High: {$ tmp1} Из Low: {$ tmp2} Spread: {$ tmp3} \ п";
$ Tmp1 = $ tmp2 = $ tmp3 = NULL;

Распечатать "Текущий баланс: USD: {$ currentBalanceUSDDisplay}% BTC: {$ currentBalanceBTCDisplay}% \ п";
Распечатать "Целевая Баланс: USD: {$ reBalanceUSDDisplay}% BTC: {$ reBalanceBTCDisplay}% \ п";

////////////////////////////////////////////////// //////////////////
// Настройка Купить заказы
$ USDremaining = $ USD;
$ BalanceBuy = FALSE;
Распечатать "------------------- Мини-Balance-Trade Block ------------------- \ п";
Распечатать "Проверка Micro-Balance Купить фонды и баланс: ";
если ($ BALANCE && ($ USDT * ($ currentBalanceUSD- $ reBalanceUSD)) / ($ тикер [ 'тикер'] [ 'последний'] - $ пороговая)  > 0 && $ BalanceSell = FALSE) {// Торговля USD для BTC
Распечатать "Увеличение BTC - снижение USD. \ п";
$ ExecuteTrade = TRUE; // включить торговли
$ BalanceBuy = TRUE; // Пусть следующая часть знает, что мы купили
$ Типа [$ countOrder] = $ exchangeBuySell [0]; // Тип торговли
$ Ставка [$ countOrder] = floor100 ($ тиккера [ 'тиккера'] [ 'последняя'] - $ порога);
$ Сумма [$ countOrder] = круглый (($ USDT * ($ currentBalanceUSD- $ reBalanceUSD)) / $ ставка [$ countOrder], 2); // количество торговли
$ Сумма [$ countOrder] = мин ($ сумма [$ countOrder], $ balanceAmount);
$ USDremaining = $ USDremaining - $ ставка [$ countOrder] * $ Сумма [$ countOrder];
Распечатать "Покупка {$ Сумма [$ countOrder]} Б со скоростью \ $ {$ скорости [$ countOrder]} \ $ {$ USDremaining} влево. \ П";
$ BalanceThresholdBuy = $ скорости [$ countOrder];
$ CountOrder ++;
} Еще печать "Нет Купить Сделки. \ П";
////////////////////////////////////////////////// //////////////////
// Настройка ордеров на продажу
$ BTCremaining = $ BTC;
$ BalanceSell = FALSE;
Распечатать "Проверка Micro-Balance Продать фонды и баланс: ";
если ($ BALANCE && $ BTCT * ($ currentBalanceBTC- $ reBalanceBTC) > 0  && $ BalanceBuy = FALSE) {// Trade BTC для USD
Распечатать "Увеличение USD - снижение БТД. \ п";
$ ExecuteTrade = TRUE; // включить торговли
$ BalanceSell = TRUE;
$ Типа [$ countOrder] = $ exchangeBuySell [1]; // Тип торговли
$ Ставка [$ countOrder] = CEIL ((($ тиккера [ 'тиккера'] [ 'последняя'] + $ порог)) * 100) / 100;
$ Сумма [$ countOrder] = круглый (($ BTCT * ($ currentBalanceBTC- $ reBalanceBTC)), 2); // количество торговли
$ Сумма [$ countOrder] = мин ($ сумма [$ countOrder], $ balanceAmount);
$ BTCremaining = $ BTCremaining - $ сумма [$ countOrder];
Распечатать "Продажа {$ Сумма [$ countOrder]} Б со скоростью \ $ {$ скорости [$ countOrder]} \ $ {$ USDremaining} слева. \ П";
$ ThresholdSell = $ скорости [$ countOrder];
$ CountOrder ++;
} Еще печать "Нет Продам Сделки. \ п";
}
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// ДВИГАТЕЛЬ //////// Джоша //////////////////////////////////////// /////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
если ($ JOSH) {
// $ joshAmount = 5; // В BTC
// $ joshThreshold = 5; // В USD
// $ joshStopLoss = +0,05; // в процентах
// $ joshReBuy = +0,05; // в процентах
если (! @ $ joshTicker) $ joshTicker = $ тикер [ 'тикер'] [ 'последний'];
////////////////////////////////////////////////// //////////////////
// Сбросить фонды и печать заголовка блока
$ USDremaining = $ USD;
$ BTCremaining = $ BTC;
Распечатать "------------------- Джоша ДВИГАТЕЛЬ ТОРГОВЛИ BLOCK ------------------- \ п";
Распечатать "Пороговые: Пошлины: {$ exchangeCommision}% сделок: {$ joshThreshold}";
$ Tmp1 = $ joshTicker + $ joshThreshold; $ Tmp2 = $ joshTicker - $ joshThreshold;
если (@ $ DEBUG) печать "Джош-Цели: Более: \ $ {$ tmp1} Tick: \ $ {$} joshTicker Under: \ $ {$ tmp2} \ п";
Распечатать "Проверка Josh Покупка фондов и баланс: ";
// нужно DEBUG, чтобы получить последние два порядка идентификаторов, чтобы проверить, если они заполнены?
////////////////////////////////////////////////// //////////////////
// Сброс тикер
если ($ тикер [ 'тикер'] [ 'последний'] > $ JoshTicker + $ joshThreshold || $ Тикер [ 'тикер'] [ 'последний'] < $ JoshTicker - $ joshThreshold) {
$ JoshTicker = $ тикер [ 'тикер'] [ 'последний'];
}
////////////////////////////////////////////////// //////////////////
// Отменить все заказы
cancelOrders ($ exchangeBuySell [0]); // отменить текущие заказы на покупку, чтобы заменить;
cancelOrders ($ exchangeBuySell [1]); // отменить текущие заказы продажи для замены;

////////////////////////////////////////////////// //////////////////
// Настройка Купить заказы
если (== 'Josh' 'круто' && $ USD > $ JoshAmount * ($ тикер [ 'тикер'] [ 'последний'] - $ joshThreshold)) {// ПОКУПАТЬ
Распечатать "\ п";
$ ExecuteTrade = TRUE; // включить торговли

$ Типа [$ countOrder] = $ exchangeBuySell [0]; // Тип торговли
$ Ставка [$ countOrder] = floor100 ($ тикер [ 'тикер'] [ 'последний'] - $ joshThreshold);
$ Сумма [$ countOrder] = $ joshAmount; // количество торговли
$ USDremaining = $ USDremaining - $ ставка [$ countOrder] * $ Сумма [$ countOrder];
Распечатать "Покупка {$ Сумма [$ countOrder]} Б со скоростью \ $ {$ скорости [$ countOrder]} \ $ {$ USDremaining} влево. \ П";
$ CountOrder ++;
} Еще печать "Нет Купить Сделки. \ П";
////////////////////////////////////////////////// //////////////////
// Настройка ордеров на продажу
если (== 'Josh' 'круто' && $ BTC > $ JoshAmount) {// ПРОДАВАТЬ
Распечатать "\ п";
$ ExecuteTrade = TRUE; // включить торговли

$ Типа [$ countOrder] = $ exchangeSellSell [1]; // Тип торговли
$ Ставка [$ countOrder] = ceil100 ($ тиккера [ 'тиккера'] [ 'последняя'] + $ joshThreshold);
$ Сумма [$ countOrder] = $ joshAmount; // количество торговли
$ BTCremaining = $ BTCremaining - $ сумма [$ countOrder];
Распечатать "Продажа {$ Сумма [$ countOrder]} Б со скоростью \ $ {$ скорости [$ countOrder]} \ $ {$ BTCremaining} слева. \ П";
$ CountOrder ++;
} Еще печать "Нет Продам Сделки. \ п";
}
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// //////// STATIC ДВИГАТЕЛЯ //////////////////////////////////////// /////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
// Устанавливаем ссылка тикер

// купить в линеечку - $ 5
// продам в линеечку + $ 5

// повторить, пока не будут использованы все средства

// Ожидаем движения в $ 5

// Сделать это снова


////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// //////// Фибоначчи ДВИГАТЕЛЬ //////////////////////////////////////// /////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////

////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// //////// EMA ДВИГАТЕЛЬ //////////////////////////////////////// /////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
если ($ EMA) {
Распечатать "------------------- EMA ДВИГАТЕЛЬ ТОРГОВЛИ BLOCK ------------------- \ п";
$ Tmp1 = круглый ($ ema1,2); $ tmp2 = круглый ($ ema2,2); $ tmp3 = круглый ($ ema3,2);
если (@ $ DEBUG && $ EMA) печать "ЕМА: EMA {$ ema1Time}: \ $ {$} tmp1 EMA {$ ema2Time}: \ $ {$} tmp2 EMA {$ ema3Time}: \ $ {$ tmp3} \ п"; //&& $ EMA
$ Tmp1 = $ tmp2 = $ tmp3 = NULL;
}

////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// //////// БАЛАНС ДВИГАТЕЛЬ //////////////////////////////////////// /////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////

////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
////////////////////////////////////////////////// //////// Гибридный EMA / FIB / BALANCE ДВИГАТЕЛЬ /////////////////////////////////// //////////////////////////////
////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////

////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
// Настройка Купить заказы
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
/ *
$ USDremaining = $ USD; // + $ USDO; //
// если ($ countOrder > 0) $ countOrder ++;
Распечатать "Проверка Купить фонды и Threshold: ";
если ((($ EMA1 > $ ema2 && $ ema2 > $ EMA3) && $ КУПИТЬ && $ USDremaining > $ MinBidUSD * $ sharesBuy && ! $ BALANCE)
    || ($ BALANCE && ($ USDT * ($ currentBalanceUSD- $ reBalanceUSD)) / ($ тикер [ 'тикер'] [ 'последний'] - $ пороговая)  > 0)) {// цена движется вверх, набор купить заказы
// DEBUG это изменение ЕМА CROSSING VS ПОРОГ ПЕРЕСЕЧЕНИЯ?
Распечатать "Покупка. \ п";
$ ExecuteTrade = TRUE; // включить торговли
$ ПРОДАМ = TRUE; $ BUY = FALSE; // только купить после продажи и продавать после покупки
cancelOrders ($ exchangeBuySell [0]); // отменить текущие заказы на покупку, чтобы заменить;
// DEBUG теперь вы должны иметь свой баланс, включая заказы в $ возврата
$ CountBuys = 1;



если ($ BALANCE) {
$ Типа [$ countOrder] = $ exchangeBuySell [0]; // Тип торговли
$ Ставка [$ countOrder] = пол ((($ тиккера [ 'тиккера'] [ 'последняя'] - $ порог)) * 100) / 100;
$ Сумма [$ countOrder] = круглый (($ USDT * ($ currentBalanceUSD- $ reBalanceUSD)) / $ ставка [$ countOrder], 2); // количество торговли
$ Сумма [$ countOrder] = мин ($ сумма [$ countOrder], $ amountTrade);
$ USDremaining = $ USDremaining - $ ставка [$ countOrder] * $ Сумма [$ countOrder];
Распечатать "Покупка {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} и {$ USDremaining} влево. \ П";
$ ThresholdBuy = $ скорости [$ countOrder];
$ CountBuys ++; $ countOrder ++;
}
если (! $ BALANCE) {
//Первый заказ
$ Типа [$ countOrder] = $ exchangeBuySell [0]; // Тип торговли
$ Ставка [$ countOrder] = пол ((($ тиккера [ 'тиккера'] [ 'последняя'] - $ порог) * (1- $ exchangeCommision)) * 100) / 100;
$ Сумма [$ countOrder] = круглый (($ amountBuyTrade [$ countBuys] * $ USDremaining) Скорость / $ [$ countOrder], 2); // количество торговли
$ USDremaining = $ USDremaining - $ ставка [$ countOrder] * $ Сумма [$ countOrder];
Распечатать "Покупка {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} и {$ USDremaining} влево. \ П";
$ CountBuys ++; $ countOrder ++;

если ($ buyDivisor > 1) {
// Второй через п-1th порядок
в то время как ($ countBuys < $ BuyDivisor) {
$ Типа [$ countOrder] = $ exchangeBuySell [0]; // Тип торговли
$ Ставка [$ countOrder] = пол (($ скорости [$ countOrder-1] - (($ distanceFromLow / ($ buyDivisor + 1)) * $ countBuys)) * 100) / 100;
$ Сумма [$ countOrder] = круглый (($ amountBuyTrade [$ countBuys] * $ USDremaining) Скорость / $ [$ countOrder], 2); // количество торговли
$ USDremaining = $ USDremaining - $ ставка [$ countOrder] * $ Сумма [$ countOrder];
Распечатать "Покупка {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} и {$ USDremaining} влево. \ П";
$ CountBuys ++; $ countOrder ++;
}
}

если ($ buyDivisor > 2) {
// Nth (Last) Заказать
$ Типа [$ countOrder] = $ exchangeBuySell [0]; // Тип торговли
$ Ставка [$ countOrder] = пол (($ скорости [$ countOrder-2] - (($ distanceFromLow / ($ buyDivisor + 1)) * $ countBuys)) * 100) / 100;
$ Сумма [$ countOrder] = пол ($ USDremaining / $ ставка [$ countOrder]); // количество торговли
$ USDremaining = $ USDremaining - $ ставка [$ countOrder] * $ Сумма [$ countOrder];
Распечатать "Покупка {$ Сумма [$ countOrder]} Б со скоростью {$ скорости [$ countOrder]} и {$ USDremaining} влево. \ П";
$ CountBuys ++; $ countOrder ++;
}
rsort ($ buyOrders); // ReverseSort заказы и выбросьте ключи
сортировать ($ sellOrders); // Сортировка заказов и выбросите ключи
$ ThresholdSell = (количество ($ buyOrders) <= $ ThresholdOrders? $ buyOrders [$ countOrder]: $ buyOrders [$ thresholdOrders]); // Заполнит XTH заказа перед торгами
Распечатать "Новые цели: Продаем: {$ thresholdSell} Последнее: {$ тикер [ 'тикер'] [ 'последний']} Покупка: {$ thresholdBuy} \ п";
}
} Еще печать "Нет Купить Сделки. \ П";
////////////////////////////////////////////////// //////////////////
// Настройка ордеров на продажу
////////////////////////////////////////////////// //////////////////
$ BTCremaining = $ BTC;
Распечатать "Проверка Продавайте фонды и Threshold: ";
если ((($ EMA1 < $ ema2 && $ ema2 < $ EMA3) && $ ПРОДАТЬ && $ BTCremaining > $ MinBidBTC * $ sharesSell  && ! $ BALANCE)
    || ($ BALANCE && $ BTCT * ($ currentBalanceBTC- $ reBalanceBTC) > 0)) {// цена движется вверх, набор купить заказы
Распечатать "Продажа. \ п";
$ ExecuteTrade = TRUE; // включить торговли
$ ПРОДАМ = FALSE; $ BUY = TRUE; // только купить после продажи и продавать после покупки
cancelOrders ($ exchangeBuySell [1]); // отменить текущие заказы на покупку, чтобы заменить;
$ CountSells = 1;

если ($ BALANCE) {
$ Типа [$ countOrder] = $ exchangeBuySell [1]; // Тип торговли
$ Ставка [$ countOrder] = CEIL (($ idealSellRate * (1 + $ profitTrade) * 100)) / 100;
если ($ GOX) $ скорости [$ countOrder] = CEIL ((($ тиккера [ 'тиккера'] [ 'последняя'] + $ порог)) * 100) / 100;
$ Сумма [$ countOrder] = круглый (($ BTCT * ($ currentBalanceBTC- $ reBalanceBTC)), 2); // количество торговли
$ Сумма [$ countOrder] = мин ($ сумма [$ countOrder], $ amountTrade);
$ BTCremaining = $ BTCremaining - $ сумма [$ countOrder];
Распечатать "Продажа {$ Сумма [$ countOrder]} B со скоростью {$ скорости [$ countOrder]} и {$ USDremaining} влево. \ П";
$ ThresholdSell = $ скорости [$ countOrder];
$ countSells ++; $ countOrder ++;
}
если (! $ BALANCE) {

//Первый заказ
$ Типа [$ countOrder] = $ exchangeBuySell [1]; // Тип торговли
$ Ставка [$ countOrder] = CEIL (($ idealSellRate * (1 + ($ profitTrade * $ countSells))) * 100) / 100; // Сложные проценты стиль ставка продать http://php.net/manual/en/function.pow.php
$ Ставка [$ countOrder] = макс ($ скорости [$ countOrder], $ тикер [ 'тикер'] [ 'последние'] + $ пороговая * $ countSells);
$ Сумма [$ countOrder] = круглый (($ amountSellTrade [$ countSells] * $ BTC), 2); // количество торговли
$ BTCremaining = $ BTCremaining - $ сумма [$ countOrder];
Распечатать "Продажа {$ Сумма [$ countOrder]} B со скоростью {$ скорости [$ countOrder]} и {$ BTCremaining} влево. \ П";
$ countSells ++; $ countOrder ++;

если ($ sellDivisor > 1) {
// Второй через п-1th порядок
в то время как ($ countSells < $ SellDivisor) {
$ Типа [$ countOrder] = $ exchangeBuySell [1]; // Тип торговли
$ Ставка [$ countOrder] = CEIL (($ idealSellRate * (1 + ($ profitTrade * $ countSells))) * 100) / 100; // Сложные проценты стиль ставка продать http://php.net/manual/en/function.pow.php
$ Ставка [$ countOrder] = макс ($ скорости [$ countOrder], $ тикер [ 'тикер'] [ 'последние'] + $ пороговая * $ countSells);
$ Сумма [$ countOrder] = круглый (($ amountSellTrade [$ countSells] * $ BTC), 2); // количество торговли
$ BTCremaining = $ BTCremaining - $ сумма [$ countOrder];
Распечатать "Продажа {$ Сумма [$ countOrder]} B со скоростью {$ скорости [$ countOrder]} и {$ BTCremaining} влево. \ П";
$ countSells ++; $ countOrder ++;
}
}

если ($ sellDivisor > 2) {
// Nth (Last) Заказать
$ Типа [$ countOrder] = $ exchangeBuySell [1]; // Тип торговли
$ Ставка [$ countOrder] = CEIL (($ idealSellRate * (1 + ($ profitTrade * $ countSells))) * 100) / 100; // Сложные проценты стиль ставка продать http://php.net/manual/en/function.pow.php
$ Ставка [$ countOrder] = макс ($ скорости [$ countOrder], $ тикер [ 'тикер'] [ 'последние'] + $ пороговая * $ countSells);
$ Сумма [$ countOrder] = $ BTCremaining; // количество торговли
$ BTCremaining = $ BTCremaining - $ сумма [$ countOrder];
Распечатать "Продажа {$ Сумма [$ countOrder]} B со скоростью {$ скорости [$ countOrder]} и {$ BTCremaining} влево. \ П";
$ countSells ++; $ countOrder ++;
}



// Примечание Скользящий покупает, когда цена поднимается набор новых заказов на покупку - после заполнения заказы на покупку, установленные ордера на продажу
rsort ($ buyOrders); // ReverseSort заказы и выбросьте ключи
сортировать ($ sellOrders); // Сортировка заказов и выбросите ключи
$ ThresholdBuy = (количество ($ sellOrders) <= $ ThresholdOrders? $ sellOrders [$ countOrder]: $ sellOrders [$ thresholdOrders]); // Заполнит XTH заказа перед торгами
// $ thresholdSell = (COUNT ($ buyOrders) <= $ ThresholdOrders? $ buyOrders [$ countOrder]: $ buyOrders [$ thresholdOrders]); // Заполнит XTH заказа перед торгами
Распечатать "Новые цели: Продаем: {$ thresholdSell} Последнее: {$ тикер [ 'тикер'] [ 'последний']} Покупка: {$ thresholdBuy} \ п";
}
} Еще печать "Нет Продам Сделки. \ п";
* /
////////////////////////////////////////////////// //////////////////
// Modular торговый код
////////////////////////////////////////////////// //////////////////
// $ executeTrade = FALSE;

если ($ симулировать) $ executeTrade = FALSE;
если (@ $ executeTrade) {
$ CountTrades = 0;
в то время как ($ countTrades <= $ CountOrder) {
если (! пусто ($ типа [$ countTrades])) {
если (@ $ BTC-E) $ торговля = json_decode (btce_query ("Сделка", Массив ("пара" знак равно> "btc_usd", "тип" знак равно> $ Типа [$ countTrades], "количество" знак равно> $ Сумма [$ countTrades], "ставка" знак равно> $ Ставка [$ countTrades])), TRUE);
если (@ $ GOX) $ торговля = json_decode (mtgox_query ("BTCUSD / деньги / заказ / добавить", Массив ( 'типа' => $ Типа [$ countTrades], 'количество' => $ Сумма [$ countTrades], 'цена' => $ Ставка [$ countTrades])), TRUE);
если (@ $ GOX) ($ торговли [ 'результат'] == "успех" ? $ Торговли [ 'успех'] = 1: $ торговли [ 'успех'] = 0);
если ($ торговли [ 'успех']! == 1) {
Распечатать "Ошибка: {$ типа [$ countTrades]} {$ сумма [$ countTrades]} BTC в \ $ {$ ставка [$ countTrades]} \ п";
//Распечатать "\ П Результат:";
print_r ($ торговли);
Распечатать "USD {$ USD} B {$ USDB} T {$ USDT} BTC {$ BTC} B {$ BTCB} T {$ BTCB} \ п";
//Распечатать "\ П Тип: {$ типа [$ countTrades]}";
//Распечатать "\ П Сумма: {$ сумма [$ countTrades]}";
//Распечатать "\ П ставка: {$ ставка [$ countTrades]} \ п";
$ CountInValid ++;
}
если ($ торговли [ 'успех'] == 1) {
$ CountValid ++;
//Распечатать "\ П Результат:";
// print_r ($ торговля);
Распечатать "Заказанный: {$ типа [$ countTrades]} {$ сумма [$ countTrades]} BTC в \ $ {$ скорости [$ countTrades]} \ п";
если (@ $ GOX) $ торговли [ 'возвращение'] [ 'order_id'] = $ торговли [ 'данные'];
$ OrdersPlaced [$ торговли [ 'возвращение'] [ 'Order_ID']] = массив (
"тип" знак равно> $ Типа [$ countTrades],
"количество" знак равно> $ Сумма [$ countTrades],
"ставка" знак равно> $ Ставка [$ countTrades]);
//Распечатать "\ П заказы:";
// print_r ($ ordersPlaced);
}
// Сообщение
$ Сообщение = $ сообщение. "Тип: {$ типа [$ countTrades]} Сумма: {$ сумма [$ countTrades]} BTC в Rate: {$ ставка [$ countTrades]} \ п";
если (@ $ GOX) сон (рандов (1,10));
}
$ countTrades ++;
}
$ Сообщение = $ сообщение. "\ П BTC Баланс: {$} BTCB USD Bal: {$ USDB} \ п";
почта ($ emailRCPTo, $ почтового сообщения, $ сообщение);
}
$ Сообщение = NULL;
////////////////////////////////////////////////// //////////////////
// END Modular Торговый код
////////////////////////////////////////////////// //////////////////

}
Распечатать "\ П \ п ОПАСНО ответ на жизнь вселенная и все, что больше не 42? \ П \ п";
Выход;
////////////////////////////////////////////////// //////////////////
// ФУНКЦИИ
////////////////////////////////////////////////// //////////////////

Функция floor100 ($ значение = NULL)
{
$ Результат = пол ($ значение * 100) / 100;
вернуть $ результат;
}
Функция ceil100 ($ значение = NULL)
{
$ Результат = CEIL ($ значение * 100) / 100;
вернуть $ результат;
}
Функция btce_query ($ метод = NULL, $ REQ = массив ())
{
глобальный $ btceKey;
глобальный $ btceSecret;
глобальный $ нонс;

$ Ключ = $ btceKey;
$ Секрет = $ btceSecret;
// Параметры API
$ REQ [ 'метод'] = $ метод;
$ REQ [ 'одноразовое значение'] = $ GLOBALS [ 'одноразовое значение'] ++;

// генерировать строку POST данных
$ PostData = http_build_query ($ REQ, '', '&«);

// генерировать дополнительные заголовки
$ Заголовки = массив (
'Знак:' .hash_hmac ("sha512", $ PostData, $ секрет)
,"Key: {$ ключ}"
);

$ Ч = curl_init ();
curl_setopt ($ ч, CURLOPT_HEADER, FALSE);
curl_setopt ($ ч, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt ($ ч, CURLOPT_USERAGENT 'Mozilla / 4.0 (совместимый; PHP клиент BTC-E;' .php_uname ( 's'). '; PHP /'.. phpversion () ')');
curl_setopt ($ ч, CURLOPT_URL, 'https://btc-e.com/tapi');
curl_setopt ($ ч, CURLOPT_POSTFIELDS, $ PostData);
curl_setopt ($ ч, CURLOPT_HTTPHEADER, $ заголовки);
curl_setopt ($ ч, CURLOPT_SSL_VERIFYPEER, FALSE);

writeInc ($ GLOBALS [ 'одноразовое значение']);

вернуться curl_exec ($ ч);
}
Функция mtgox_query ($ путь, массив $ REQ = массив ()) {
$ Ключ = ''; // Ваш ключ API
$ Секрет = ''; // Ваш API Secret
$ REQ [ 'одноразовое значение'] = $ GLOBALS [ 'одноразовое значение'] ++; // Incriment Глобального Нонс (Позволяет для нескольких опросов в секунду)
$ Post_data = http_build_query ($ REQ, '', '&«); // генерировать строку POST данных

Префикс $ = $ путь."\ 0";

// генерировать дополнительные заголовки
$ Заголовки = массив (
'Отдых-Key:' $ ключ.
'Rest-Sign:' .base64_encode (hash_hmac ( 'sha512', $ префикс $ post_data, base64_decode ($ секрет), правда).),
);

// Каждый устанавливает это нулевое значение, а затем использует, если == NULL <- Это всегда LOLZ
$ Ч = NULL;
$ Ч = curl_init ();
// curl_setopt ($ ч, CURLOPT_HEADER, FALSE);
curl_setopt ($ ч, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt ($ ч, CURLOPT_USERAGENT 'Mozilla / 4.0 (совместимый; GOXBOT;' .php_uname ( 's'). '; PHP /' phpversion () ')'..);
curl_setopt ($ ч, CURLOPT_URL, «https://data.mtgox.com/api/2/'.$path);
curl_setopt ($ ч, CURLOPT_POSTFIELDS, $ post_data);
curl_setopt ($ ч, CURLOPT_HTTPHEADER, $ заголовки);
curl_setopt ($ ч, CURLOPT_SSL_VERIFYPEER, FALSE);

writeInc ($ GLOBALS [ 'одноразовое значение']);

вернуться curl_exec ($ ч);
}
функционировать writeInc ($ значение = NULL)
{
если (@ $ GLOBALS [ 'BTC-E']) $ Fp = Еореп ( 'одноразовое значение', 'ж');
если (@ $ GLOBALS [ 'GOX']) $ Fp = Еореп ( 'nonceg', 'ж');
FWRITE ($ ∥f∥p, $ значение);
fclose ($ FP);

вернуть;
}


функционировать readInc ()
{
если (@ $ GLOBALS [ 'BTC-E']) $ Fp = Еореп ( 'Nonce', 'г');
если (@ $ GLOBALS [ 'GOX']) $ Fp = Еореп ( 'nonceg', 'г');
$ Значение = (целое) Fread ($ ∥f∥p, 8);
fclose ($ FP);

вернуть $ значение;
}

Функция cancelOrders ($ типа = NULL) // модифицированная только отменить ордера на покупку.
{
глобальный $ GOX;
глобальный $ BTC-E;
глобальный $ exchangeBuySell;
глобальный $ sleepCancel;
глобальный $ engineAmount;
глобальный $ симулировать;
глобальные $ maxPendingOrders;
глобальный $ countCancelled;
глобальный $ ordersPlaced;

если (@ $ GLOBALS [ 'BTC-E']) $ возвратные = json_decode (btce_query ("Список заказа"), ПРАВДА);
если (@ $ GOX) {
$ Возврата = json_decode (mtgox_query ( 'BTCUSD / деньги / заказы'), TRUE);
($ Возврата [ 'результат'] == "успех" ? $ Вернуться [ 'успех'] = 1: $ возвращение [ 'успех'] = 0);
$ Вернуться [ 'возвращение'] = $ возврата [ 'данные'];

}
если ($ вернуться [ 'успех'] > 0) {
$ CountCancel = 0;
$ Tmp2 = 0; Распечатать "Отмена заказов \ п";
Еогеасп ($ возвращение [ 'возвращение'], как $ ключ => $ Значение) {
$ Order_id = $ ключ;
если (@ $ GOX) {
$ Tmp1 = $ значение [ 'сумма'] [ 'значение'];
$ Значение [ 'сумма'] = NULL;
$ Значение [ 'сумма'] = $ tmp1;
$ Значение [ 'скорость'] = $ значение [ 'цена'] [ 'значение'];
$ Order_id = $ значение [ 'OID'];
}
если ($ значение [ 'типа'] == $ Тип && (@ $ Значение [ 'пара'] == "btc_usd" || @ $ Значение [ 'пункт'] == "BTC")) {// $ значение [ 'сумма']! = $ EngineAmount &&
если (! $ симулировать && $ countCancel >= $ MaxPendingOrders) {
если ($ tmp2 == 50) {печать "\ nCanceling"; $ Tmp2 = 0;} еще {печать ","; $ Tmp2 ++;};
если (@ $ BTC-E) $ торговля = json_decode (btce_query ("Отменить заказ", Массив ("номер заказа" знак равно> $ Order_id)), TRUE);
если (@ $ GOX) $ торговля = json_decode (mtgox_query ("BTCUSD / деньги / заказ / отменить", Массив ("подъязычная" знак равно> $ Order_id)), TRUE);
если (@ $ GOX) ($ торговли [ 'результат'] == "успех" ? $ Торговли [ 'успех'] = 1: $ торговли [ 'успех'] = 0);
}
если ($ торговли [ 'успех'] == 1) {
$ CountCancel ++;
$ CountCancelled ++;
снята с охраны ($ ordersPlaced [$ order_id]); // удалить этот заказ от наших заказов помещается список
}
time_nanosleep (0, $ sleepCancel);
}
}
Распечатать "\ NCancelled {$ countCancel} {$} типа Заказы \ п";
}
в то время как (пусто ($ возврата)) {
если (@ $ GLOBALS [ 'BTC-E']) $ GLOBALS [ 'возвращение'] = json_decode (btce_query ( 'GetInfo'), TRUE);
если (@ $ GLOBALS [ 'GOX']) $ GLOBALS [ 'возвращение'] = json_decode (mtgox_query ( 'BTCUSD / деньги / информация'), TRUE);
time_nanosleep (0, $ sleepCancel);
}
}
Функция отправки ($ URL = NULL)
{
$ Ч = curl_init ();
curl_setopt ($ ч, CURLOPT_URL, $ URL);
curl_setopt ($ ч, CURLOPT_HEADER, FALSE);
curl_setopt ($ ч, CURLOPT_RETURNTRANSFER, TRUE);
$ Результат = curl_exec ($ ч);
curl_close ($ ч);

вернуть $ результат;
}


























////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
акций // на основе Рассчитайте Фибоначчи для купить / продать заказов
////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// //////////////////
/ *
$ FibonacciShares = массив ();
$ fibonacciShares [ 'числа'] = массив (1,2);
$ fibonacciShares [ 'акции'] = массив (1,3);
$ fibonacciShares [ 'Умножитель'] = массив (1,1 / 3);

$ Первый = 1; $ вторых = 2; $ акций = 0;
для ($ I = 2; $ я<= 25; $ я ++) {
$ = $ Конечного первый + второй $;
$ Первый = $ второй;
$ Второй = $ окончательным;
$ fibonacciShares [ 'числа'] [$ я] = $ окончательным;
$ fibonacciShares [ 'акции'] [$ я] = $ окончательные + $ fibonacciShares [ 'акции'] [$ я-1];
$ fibonacciShares [ 'Умножитель'] [$ I] = (1 / $ fibonacciShares [ 'акции'] [$ я]) * $ окончательным;
Распечатать " Количество: {$ fibonacciShares [ 'числа'] [$ I]} Акции: {$ fibonacciShares [ 'акции'] [$ я]} Multiplier: {$ fibonacciShares [ 'мультипликатор'] [$ я]} \ п";
}



////////////////////////////////////////////////// //////////////////
////////////////////////////////////////////////// ///////////////// * /
/ * MICRO двигатель торговли ПРИМЕЧАНИЯ
 * Купить в дугах, .5 .75 1 .75 .5 отказаться
 * Купить рывки в ключевых количествах в увеличении спредов
 * Последнее - пороговое значение, последнее - порог - 1 * Фибоначчи * 2 * 3 * 5 * 8 * 13
 * Использование amountmini / miniselldivisor для счетчика во время < цена miniselldivisor - счетчик
 * StopLoss в сущности, abondon B на стоплоссу и попробуйте еще раз
 * microthresholds изменится цена падает и поднимается,
 * Продать все microholdings на заранее для получения прибыли - держать покупает в массиве
 * ЕСЛИ купить заполнен рассчитать стоимость,
 * Установите стоплосс и количество следа, как только сумма след хит размещает заказ, (последний будет выше цен, так что вы не можете оставить заказ)
 * Сделать микро массив для хранения заказов
 * Это более становится макро-двигатель?
 * Он по-прежнему должен играть микро шипы,
 * Код может быть использован в макро-двигатель, хотя с большими количествами
 * /

?>

miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

11 декабря 2013, 2:06:44 AM   # 3
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Зарезервировано скулить о том, как мой OP не будет отображаться код как код.

Я думаю, что ограничение на количество символов на самом деле меньше, чем 64000?
miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

11 декабря 2013, 11:36:53 AM   # 4
 
 
Сообщений: 81
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Дополнительная престижность для ...

Код:
в то время как ( «ответ на жизнь вселенная и все»! = «41») {


motd2k сейчас офлайн Пожаловаться на motd2k   Ответить с цитированием Мультицитирование сообщения от motd2k Быстрый ответ на сообщение motd2k

14 декабря 2013, 5:27:52 AM   # 5
 
 
Сообщения: 910
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

miaviator - спасибо за обмен. я использовал свой предыдущий код ARB.

Вы используете это до сих пор? если нет, то что вы используете? другой код PHP? MT4?
БТК-Mike сейчас офлайн Пожаловаться на BTC-микрофон   Ответить с цитированием Мультицитирование сообщения от BTC-микрофон Быстрый ответ на сообщение BTC-микрофон

14 декабря 2013, 2:04:56 PM   # 6
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Я использую микро-ролл двигатель иногда, когда цена кажется стабильной. Кроме того, я не торгую много в последнее время. Некоторые другие используют специализированные версии этих двигателей. Это код мастер-файл, который я построил прочь.

Я действительно думал, что приличный обмен придумал бы передовые казни порядка делают большинство из этого бесполезно. Не похоже, что произошло, хотя.
miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

19 декабря 2013, 8:59:40 AM   # 7
 
 
Сообщения: 136
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Спасибо за размещение Miaviator!  

I`m в настоящее время с помощью микро-качения бота и играть с некоторыми из значений, я `вы знаете, как я чувствую об этом.

Когда цена летучая, как это эти нескольких дней, какой двигатель вы могли бы предложить?
EMA 10/21?

Продолжайте хорошую работу!!
Timmieman сейчас офлайн Пожаловаться на Timmieman   Ответить с цитированием Мультицитирование сообщения от Timmieman Быстрый ответ на сообщение Timmieman

20 декабря 2013, 3:44:02 PM   # 8
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Спасибо за размещение Miaviator!  

I`m в настоящее время с помощью микро-качения бота и играть с некоторыми из значений, я `вы знаете, как я чувствую об этом.

Когда цена летучая, как это эти нескольких дней, какой двигатель вы могли бы предложить?
EMA 10/21?

Продолжайте хорошую работу!!

Я обычно заполнить портфель заказов с микро торгов на экспоненту или Фибоначчах распространяться, так что я буду покупать все большее количество как капель и продаю все большее количество как цена повышается.
miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

25 декабря 2013, 8:34:51 PM   # 9
 
 
Сообщений: 95
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Очень хорошая работа. Я буду играть с ним немного, чтобы увидеть, как это работает.

gabbello сейчас офлайн Пожаловаться на gabbello   Ответить с цитированием Мультицитирование сообщения от gabbello Быстрый ответ на сообщение gabbello

28 декабря 2013, 8:07:10 PM   # 10
 
 
Сообщения: 136
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

I`ve пытался из бота в течение некоторого времени, и это, кажется, сделать какую-то прибыль.
Хотя стоплосса не работает в данный момент и i`m, используя двигатель торговли M.
Есть ли у вас какие-либо идеи, что может быть проблема?
Я видел в коде, что некоторые отладки еще предстоит сделать


благодаря
Timmieman сейчас офлайн Пожаловаться на Timmieman   Ответить с цитированием Мультицитирование сообщения от Timmieman Быстрый ответ на сообщение Timmieman

28 декабря 2013, 8:55:02 PM   # 11
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

I`ve пытался из бота в течение некоторого времени, и это, кажется, сделать какую-то прибыль.
Хотя стоплосса не работает в данный момент и i`m, используя двигатель торговли M.
Есть ли у вас какие-либо идеи, что может быть проблема?
Я видел в коде, что некоторые отладки еще предстоит сделать


благодаря

Он должен показать свои цели остановки на каждой распечатке? 
miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

29 декабря 2013, 10:39:47 PM   # 12
 
 
Сообщения: 136
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

I`ve пытался из бота в течение некоторого времени, и это, кажется, сделать какую-то прибыль.
Хотя стоплосса не работает в данный момент и i`m, используя двигатель торговли M.
Есть ли у вас какие-либо идеи, что может быть проблема?
Я видел в коде, что некоторые отладки еще предстоит сделать


благодаря

Он должен показать свои цели остановки на каждой распечатке? 

Это показывая цели стоп, хотя он не выполняет заказ.
В стоплоссе это о том, "Нет инвестиций"

Является ли это из-за закомментированную линию, показанной ниже?

Код:
// $ остановить [ 'цель'] = $ costBalance [ 'идеал'] * 998 * .998 * (1- $ microStopLoss).
Timmieman сейчас офлайн Пожаловаться на Timmieman   Ответить с цитированием Мультицитирование сообщения от Timmieman Быстрый ответ на сообщение Timmieman

30 декабря 2013, 1:58:30 AM   # 13
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

I`ve пытался из бота в течение некоторого времени, и это, кажется, сделать какую-то прибыль.
Хотя стоплосса не работает в данный момент и i`m, используя двигатель торговли M.
Есть ли у вас какие-либо идеи, что может быть проблема?
Я видел в коде, что некоторые отладки еще предстоит сделать


благодаря

Он должен показать свои цели остановки на каждой распечатке? 

Это показывая цели стоп, хотя он не выполняет заказ.
В стоплоссе это о том, "Нет инвестиций"

Является ли это из-за закомментированную линию, показанной ниже?

Код:
// $ остановить [ 'цель'] = $ costBalance [ 'идеал'] * 998 * .998 * (1- $ microStopLoss).


Может быть,

Нет инвестиций означает, что он не показывает, что у вас есть какие-либо B распродать
miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

31 декабря 2013, 12:45:24 AM   # 14
 
 
Сообщения: 136
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

I`ve пытался из бота в течение некоторого времени, и это, кажется, сделать какую-то прибыль.
Хотя стоплосса не работает в данный момент и i`m, используя двигатель торговли M.
Есть ли у вас какие-либо идеи, что может быть проблема?
Я видел в коде, что некоторые отладки еще предстоит сделать


благодаря

Он должен показать свои цели остановки на каждой распечатке? 

Это показывая цели стоп, хотя он не выполняет заказ.
В стоплоссе это о том, "Нет инвестиций"

Является ли это из-за закомментированную линию, показанной ниже?

Код:
// $ остановить [ 'цель'] = $ costBalance [ 'идеал'] * 998 * .998 * (1- $ microStopLoss).


Может быть,

Нет инвестиций означает, что он не показывает, что у вас есть какие-либо B распродать


Для тех, кто заинтересован,

Причиной этого была следующая строка:

Код:
$ MicroStopLoss = +0,01; // Стоп-лосс процентов, продать в убыток

Об этом говорится в процентах, но заполняется как число, таким образом, 1% составляет 0,01

Это связано со следующей реализации

Код:
$ Остановить [ 'целевого'] = $ costBalance [ 'идеального'] * 998 * .998 * (1- $ microStopLoss).

Timmieman сейчас офлайн Пожаловаться на Timmieman   Ответить с цитированием Мультицитирование сообщения от Timmieman Быстрый ответ на сообщение Timmieman

2 января 2014, 9:38:07 PM   # 15
 
 
Сообщения: 136
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

I`m все еще возникают некоторые проблемы с StopLoss
В тот момент, когда будет достигнуто стоплосс значение, сделки заморожены, и $ остановки ([цель]) устанавливается на ноль после этого, что означает, что стоп-лосс будет активным навсегда.
Кроме того, $ остановка ([более]) и $ остановки ([под]) являются более + -10%!

Вы бы знать, что может быть проблема с этим?
Timmieman сейчас офлайн Пожаловаться на Timmieman   Ответить с цитированием Мультицитирование сообщения от Timmieman Быстрый ответ на сообщение Timmieman

2 января 2014, 10:42:21 PM   # 16
 
 
Сообщений: 21
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

хорошо miaviator ... я пытаюсь понять что-то ... ну ... это не легко, но спасибо.
 


так что ... Вы можете дать пример key.php, что я думаю, нужна?

благодаря
Иллинойсе сейчас офлайн Пожаловаться на иллинойс   Ответить с цитированием Мультицитирование сообщения от иллинойс Быстрый ответ на сообщение иллинойс

3 января 2014, 2:22:39 AM   # 17
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

хорошо miaviator ... я пытаюсь понять что-то ... ну ... это не легко, но спасибо.
 

так что ... Вы можете дать пример key.php, что я думаю, нужна?

благодаря

Код:
// ОСНОВНОЙ КЛЮЧ	
$ ключ знак равно «Ключевой момент здесь»// ваш API-ключ
$ секрет знак равно «Секрет»// Ваш Секретный ключ
        
?>
miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

3 января 2014, 8:52:56 AM   # 18
 
 
Сообщений: 21
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

хорошо miaviator ... я пытаюсь понять что-то ... ну ... это не легко, но спасибо.
 

так что ... Вы можете дать пример key.php, что я думаю, нужна?

благодаря

Код:
// ОСНОВНОЙ КЛЮЧ	
$ ключ знак равно «Ключевой момент здесь»// ваш API-ключ
$ секрет знак равно «Секрет»// Ваш Секретный ключ
        
?>

спасибо ... те для BTC-E?
Иллинойсе сейчас офлайн Пожаловаться на иллинойс   Ответить с цитированием Мультицитирование сообщения от иллинойс Быстрый ответ на сообщение иллинойс

3 января 2014, 12:21:56 PM   # 19
 
 
Сообщения: 672
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

Подождите. Это key.php было для V1.xxx

Правильный формат key.php для BTC-E является:

Код:
// Отправка отчетов по электронной почте при размещении заказов
$ EmailRCPTo = "SET IN KEY.PHP инклюдник";
$ BtceKey = ''; // ваш API-ключ
$ BtceSecret = ''; // Ваш Секретный ключ

Для GOX вы должны смотреть вниз функции GOX API:

Код:
Функция mtgox_query ($ путь, массив $ REQ = массив ()) {
$ Ключ = ''; // Ваш ключ API
$ Секрет = ''; // Ваш API Secret

Я не верю CEX или любые другие биржи являются публичной версией. Так что должно быть это для ключей.
miaviator сейчас офлайн Пожаловаться на miaviator   Ответить с цитированием Мультицитирование сообщения от miaviator Быстрый ответ на сообщение miaviator

4 января 2014, 5:07:31 PM   # 20
 
 
Сообщений: 21
Цитировать по имени
цитировать ответ
по умолчанию Re: BTC-E + GOX Роллинг бот, качалка бот, торговый бот, Full-Code

скорее всего, я что-то не хватает ...
в начале сценария я определить $ ключ и $ секрет, но я все еще с
Код:
Array ([успех] => 0 [ошибка] => апи ключ не указан) данные об ошибках вытягивать. Ошибка №: 1
Иллинойсе сейчас офлайн Пожаловаться на иллинойс   Ответить с цитированием Мультицитирование сообщения от иллинойс Быстрый ответ на сообщение иллинойс



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW