Buat ngelakuin request API, elu perlu bikin aplikasi dan punya access token. Kalo elu belom bikin access token, ikutin dulu tutorial Cara Dapetin Access Token dengan Oauth2 dulu.
Langkah 1: Ambil konfigurasi dasar trading bot elu
Buat ngambil konfigurasi dasar trading bot elu, elu perlu ngelakuin panggilan POST ke endpoint hopper/{id}/config, di mana {id} itu ID trading bot elu.
Endpoint API:
https://api.cryptohopper.com/v1/hopper/{id}/config
Kalo request API-nya berhasil, elu bakal nerima respons JSON dengan konfigurasi dasar trading bot elu di field data.
Contoh respons JSON:
{
"data": {
"name": "name",
"live": "1",
"last_loaded_config": "config",
"last_loaded_config_date": "1632137029",
"exchange": "kucoin",
"api_key": "***",
"api_secret": "***",
"api_passphrase": "***",
"extra_api_key": "***",
"extra_api_secret": "***",
"okex_version": "3",
"ticker_type": "bidask",
"allowed_coins": [
"BTC",
"ETH"
],
"allow_all_coins": "1",
"perc_buy_amount": "2.88",
"min_buy_amount": "0.1",
"min_buy_amount_force": "1",
"strategy": "strategy",
"num_targets_per_buy": "50",
"advanced_ta_candle_size": "1800",
"min_buy_score": "0.05",
"min_sell_score": "-1",
"rsi_candle_size": "1800",
"bbands_candle_size": "60",
"buy_order_type": "market",
"bid_percentage": "0.2",
"bid_percentage_type": "lower",
"max_open_time_buy": "5",
"max_open_positions": "500",
"max_open_positions_per_coin": "0.1",
"cooldown_when": "buys",
"cooldown_count": "1",
"cooldown_val": "days",
"one_open_order": "1",
"only_when_positive_time": "480",
"stop_loss_trailing": "1",
"stop_loss_trailing_percentage": "0.5",
"stop_loss_trailing_arm": "2",
"trailing_stop_loss_reset": "1",
"trailing_stop_loss_profit": "1",
"trailing_buy_percentage": "0.2",
"short_stop_loss_trailing_percentage": "1",
"short_stop_loss_trailing_arm": "3",
"short_auto_close_positions_time": "-5 minutes",
"short_auto_remove_positions_time": "-5 minutes",
"short_remove_on_loss": "1",
"hold_assets": "1",
"auto_close_positions_time": "-7 days",
"auto_dca": "1",
"dca_order_type": "market",
"auto_dca_time": "-5 minutes",
"auto_dca_max": "1",
"auto_dca_percentage": "4",
"auto_dca_size": "custom",
"auto_dca_size_custom": "100",
"set_percentage": "1000",
"sell_order_type": "market",
"max_open_time": "5",
"ask_percentage": "0.1",
"ask_percentage_type": "higher",
"send_trade_email": "1",
"submit": "1",
"walletscrubber_leftovers": "1",
"collect_currency": "usdt",
"output_live_feed": "1",
"buy_btc_amount": "0.0005"
}
}
Langkah 2: Update konfigurasi dasar trading bot elu.
Nah, setelah kita ngambil konfigurasi dasar trading bot elu, kita bisa update konfigurasi dasar trading bot elu dengan ngirim request PATCH ke endpoint yang sama kayak yang kita pake di langkah sebelumnya dan nyediain konfigurasi yang udah di-update. Dalam contoh ini, kita bakal ngubah stop_loss_trailing_percentage jadi 0.75.
Endpoint API:
https://api.cryptohopper.com/v1/hopper/{id}/config
Contoh request JSON PATCH:
{
"config": {
"name": "name",
"live": "1",
"last_loaded_config": "config",
"last_loaded_config_date": "1632137029",
"exchange": "kucoin",
"api_key": "***",
"api_secret": "***",
"api_passphrase": "***",
"extra_api_key": "***",
"extra_api_secret": "***",
"okex_version": "3",
"ticker_type": "bidask",
"allowed_coins": [
"BTC",
"ETH"
],
"allow_all_coins": "1",
"perc_buy_amount": "2.88",
"min_buy_amount": "0.1",
"min_buy_amount_force": "1",
"strategy": "strategy",
"num_targets_per_buy": "50",
"advanced_ta_candle_size": "1800",
"min_buy_score": "0.05",
"min_sell_score": "-1",
"rsi_candle_size": "1800",
"bbands_candle_size": "60",
"buy_order_type": "market",
"bid_percentage": "0.2",
"bid_percentage_type": "lower",
"max_open_time_buy": "5",
"max_open_positions": "500",
"max_open_positions_per_coin": "0.1",
"cooldown_when": "buys",
"cooldown_count": "1",
"cooldown_val": "days",
"one_open_order": "1",
"only_when_positive_time": "480",
"stop_loss_trailing": "1",
"stop_loss_trailing_percentage": "0.75",
"stop_loss_trailing_arm": "2",
"trailing_stop_loss_reset": "1",
"trailing_stop_loss_profit": "1",
"trailing_buy_percentage": "0.2",
"short_stop_loss_trailing_percentage": "1",
"short_stop_loss_trailing_arm": "3",
"short_auto_close_positions_time": "-5 minutes",
"short_auto_remove_positions_time": "-5 minutes",
"short_remove_on_loss": "1",
"hold_assets": "1",
"auto_close_positions_time": "-7 days",
"auto_dca": "1",
"dca_order_type": "market",
"auto_dca_time": "-5 minutes",
"auto_dca_max": "1",
"auto_dca_percentage": "4",
"auto_dca_size": "custom",
"auto_dca_size_custom": "100",
"set_percentage": "1000",
"sell_order_type": "market",
"max_open_time": "5",
"ask_percentage": "0.1",
"ask_percentage_type": "higher",
"send_trade_email": "1",
"submit": "1",
"walletscrubber_leftovers": "1",
"collect_currency": "usdt",
"output_live_feed": "1",
"buy_btc_amount": "0.0005"
}
}
Kalo request API-nya berhasil, elu bakal nerima respons 200 dengan objek config yang udah di-update dan pesan yang bilang: "Config saved.".
Contoh respons JSON:
{
"data": {
"config": {
"name": "name",
"live": "1",
"last_loaded_config": "config",
"last_loaded_config_date": "1632137029",
"paper_trading_account": "0",
"exchange": "kucoin",
"api_key": "***",
"api_secret": "***",
"api_passphrase": "***",
"extra_api_key": "***",
"extra_api_secret": "***",
"okex_version": "3",
"ticker_type": "bidask",
"allowed_coins": [
"BTC",
"ETH"
],
"allow_all_coins": "1",
"perc_buy_amount": "2.88",
"min_buy_amount": "0.1",
"min_buy_amount_force": "1",
"strategy": "strategy",
"num_targets_per_buy": "50",
"advanced_ta_candle_size": "1800",
"advanced_ta_stoch_slow_k_matype": "0",
"advanced_ta_stoch_slow_d_matype": "0",
"advanced_ta_stochrsi_fast_d_matype": "0",
"advanced_ta_bbands_matype": "0",
"rsi_candle_size": "1800",
"bbands_candle_size": "60",
"bbands_deviation": "",
"buy_order_type": "market",
"bid_percentage": "0.2",
"bid_percentage_type": "lower",
"max_open_time_buy": "5",
"max_open_positions": "500",
"max_open_positions_per_coin": "0.1",
"cooldown_when": "buys",
"cooldown_count": "1",
"cooldown_val": "days",
"one_open_order": "1",
"only_when_positive_time": "480",
"arbitrage": "0",
"stop_loss_trailing": "1",
"stop_loss_trailing_percentage": "0.75",
"stop_loss_trailing_arm": "2",
"trailing_stop_loss_reset": "1",
"trailing_stop_loss_profit": "1",
"trailing_buy_percentage": "0.2",
"short_stop_loss_trailing_percentage": "1",
"short_stop_loss_trailing_arm": "3",
"short_auto_close_positions_time": "-5 minutes",
"short_auto_remove_positions_time": "-5 minutes",
"short_remove_on_loss": "1",
"hold_assets": "1",
"auto_close_positions_time": "-7 days",
"auto_dca": "1",
"dca_order_type": "market",
"auto_dca_time": "-5 minutes",
"auto_dca_max": "1",
"auto_dca_percentage": "4",
"auto_dca_size": "custom",
"auto_dca_size_custom": "100",
"set_percentage": "1000",
"sell_order_type": "market",
"max_open_time": "5",
"ask_percentage": "0.1",
"ask_percentage_type": "higher",
"send_trade_email": "1",
"submit": "1",
"stop_buying": "0",
"stop_selling": "0",
"walletscrubber_leftovers": "1",
"walletscrubber_auto": "0",
"walletscrubber_noopen": "0",
"collect_currency": "usdt",
"output_live_feed": "1",
"output_errors_only": "0",
"autosync": "0",
"autosync_all_coins": "0",
"send_trade_error_email": "0",
"send_cancelled_email": "0",
"buy_btc_amount": "0.0005",
"max_amount_allocated": "",
"advanced_ta_stoch_fast_k": "",
"advanced_ta_stoch_slow_k": "",
"advanced_ta_stoch_slow_d": "",
"advanced_ta_stoch_oversold": "",
"advanced_ta_stoch_overbought": "",
"advanced_ta_stochrsi_period": "",
"advanced_ta_stochrsi_fast_k": "",
"advanced_ta_stochrsi_fast_d": "",
"advanced_ta_stochrsi_oversold": "",
"advanced_ta_stochrsi_overbought": "",
"advanced_ta_rsi_period": "",
"advanced_ta_rsi_oversold": "",
"advanced_ta_rsi_overbought": "",
"advanced_ta_macd_fast_period": "",
"advanced_ta_macd_slow_period": "",
"advanced_ta_macd_signal_period": "",
"advanced_ta_ema_short_period": "",
"advanced_ta_ema_long_period": "",
"advanced_ta_sma_short_period": "",
"advanced_ta_sma_long_period": "",
"advanced_ta_kama_short_period": "",
"advanced_ta_kama_long_period": "",
"advanced_ta_bbands_period": "",
"advanced_ta_bbands_dev_up": "",
"advanced_ta_bbands_dev_low": "",
"rsi_period": "",
"rsi_oversold": "",
"bbands_days": "",
"stop_loss_percentage": "",
"max_open_short_positions": "",
"short_percentage_profit": ""
},
"message": "Config saved."
}
}
Semoga elu berhasil update konfigurasi dasar trading bot elu setelah baca tutorial ini.