Buat request API butuh bikin aplikasi dan punya access token. Kalo belom bikin, ikutin dulu tutorial Cara Dapetin Access Token dengan Oauth2.
Langkah 1: Ambil config pool bot lo
Buat ngambil config pool bot lo, perlu bikin GET request ke endpoint /hopper/{id}/config/pool, dengan {id} itu ID bot lo.
API endpoint:
https://api.cryptohopper.com/v1/hopper/{id}/config/pool
Kalo request API sukses, lo bakal dapet JSON response dengan config pool bot lo di field data.
Contoh JSON response:
{
"data": [
{
"id": "3242012",
"name": "CONFIG POOL 01",
"coins": "BTC",
"config": {
"max_buy_rate": "",
"advanced_ta_candle_size": "1800",
"advanced_ta_stoch_fast_k": "",
"advanced_ta_stoch_slow_k": "",
"advanced_ta_stoch_slow_k_matype": "0",
"advanced_ta_stoch_slow_d": "",
"advanced_ta_stoch_slow_d_matype": "0",
"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_fast_d_matype": "0",
"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": "",
"advanced_ta_bbands_matype": "0",
"buy_score_corrected": "0",
"min_buy_score": "0.1",
"sell_score_corrected": "0",
"min_sell_score": "-1",
"rsi_candle_size": "1800",
"rsi_period": "",
"rsi_oversold": "",
"bbands_candle_size": "60",
"bbands_days": "",
"bbands_deviation": "",
"set_percentage": "1000",
"sell_order_type": "market",
"max_open_time": "5",
"ask_percentage": "0.1",
"ask_percentage_type": "higher",
"buy_order_type": "market",
"bid_percentage": "0.2",
"bid_percentage_type": "lower",
"max_open_time_buy": "5",
"cooldown_when": "buys",
"cooldown_count": "1",
"cooldown_val": "days",
"stop_loss_percentage": "",
"stop_loss_trailing": "1",
"stop_loss_trailing_percentage": "0.50",
"stop_loss_trailing_arm": "1.50",
"trailing_stop_loss_reset": "1",
"trailing_buy_percentage": "0.25",
"auto_close_positions_time": "-7 days",
"auto_dca": "1",
"dca_order_type": "market",
"auto_dca_time": "-1 hour",
"auto_dca_max": "1",
"auto_dca_percentage": "2",
"auto_dca_size": "custom",
"auto_dca_size_custom": "100"
},
"updated": "2021-12-15 13:36:25",
"status": "1"
},
{
"id": "3242015",
"name": "CONFIG POOL 02",
"coins": "ETH",
"config": {
"max_buy_rate": "",
"advanced_ta_candle_size": "1800",
"advanced_ta_stoch_fast_k": "",
"advanced_ta_stoch_slow_k": "",
"advanced_ta_stoch_slow_k_matype": "0",
"advanced_ta_stoch_slow_d": "",
"advanced_ta_stoch_slow_d_matype": "0",
"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_fast_d_matype": "0",
"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": "",
"advanced_ta_bbands_matype": "0",
"buy_score_corrected": "0",
"min_buy_score": "0.1",
"sell_score_corrected": "0",
"min_sell_score": "-1",
"rsi_candle_size": "1800",
"rsi_period": "",
"rsi_oversold": "",
"bbands_candle_size": "60",
"bbands_days": "",
"bbands_deviation": "",
"set_percentage": "1000",
"sell_order_type": "market",
"max_open_time": "5",
"ask_percentage": "0.1",
"ask_percentage_type": "higher",
"buy_order_type": "market",
"bid_percentage": "0.2",
"bid_percentage_type": "lower",
"max_open_time_buy": "5",
"cooldown_when": "buys",
"cooldown_count": "1",
"cooldown_val": "days",
"stop_loss_percentage": "",
"stop_loss_trailing": "1",
"stop_loss_trailing_percentage": "0.50",
"stop_loss_trailing_arm": "1.50",
"trailing_stop_loss_reset": "1",
"trailing_buy_percentage": "0.25",
"auto_close_positions_time": "-7 days",
"auto_dca": "1",
"dca_order_type": "market",
"auto_dca_time": "-1 hour",
"auto_dca_max": "1",
"auto_dca_percentage": "2",
"auto_dca_size": "custom",
"auto_dca_size_custom": "100"
},
"updated": "2021-12-15 13:36:48",
"status": "1"
}
]
}
Langkah 2: Update config pool bot lo.
Sesudah dapet config pool bot lo, kita bisa update salah satunya dengan kirim PATCH request ke endpoint yang sama kayak langkah sebelumnya. Lo mesti kasih ID konfigurasi (di {pool_id}) dan konfigurasi yang udah di-update. Contohnya, kita mau ubah stop_loss_trailing_percentage jadi 0.75.
API endpoint:
https://api.cryptohopper.com/v1/hopper/{id}/config/{pool_id}
Contoh JSON PATCH request:
{
"config": {
"max_buy_rate": "",
"advanced_ta_candle_size": "1800",
"advanced_ta_stoch_fast_k": "",
"advanced_ta_stoch_slow_k": "",
"advanced_ta_stoch_slow_k_matype": "0",
"advanced_ta_stoch_slow_d": "",
"advanced_ta_stoch_slow_d_matype": "0",
"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_fast_d_matype": "0",
"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": "",
"advanced_ta_bbands_matype": "0",
"buy_score_corrected": "0",
"min_buy_score": "0.1",
"sell_score_corrected": "0",
"min_sell_score": "-1",
"rsi_candle_size": "1800",
"rsi_period": "",
"rsi_oversold": "",
"bbands_candle_size": "60",
"bbands_days": "",
"bbands_deviation": "",
"set_percentage": "1000",
"sell_order_type": "market",
"max_open_time": "5",
"ask_percentage": "0.1",
"ask_percentage_type": "higher",
"buy_order_type": "market",
"bid_percentage": "0.2",
"bid_percentage_type": "lower",
"max_open_time_buy": "5",
"cooldown_when": "buys",
"cooldown_count": "1",
"cooldown_val": "days",
"stop_loss_percentage": "",
"stop_loss_trailing": "1",
"stop_loss_trailing_percentage": "0.75",
"stop_loss_trailing_arm": "1.50",
"trailing_stop_loss_reset": "1",
"trailing_buy_percentage": "0.25",
"auto_close_positions_time": "-7 days",
"auto_dca": "1",
"dca_order_type": "market",
"auto_dca_time": "-1 hour",
"auto_dca_max": "1",
"auto_dca_percentage": "2",
"auto_dca_size": "custom",
"auto_dca_size_custom": "100"
}
}
Kalo request API sukses, lo bakal dapet response 200 dengan pesan config pool udah di-update.
Contoh JSON response:
{
"data": "Config pool updated."
}
Moga-moga lo berhasil update config pool bot lo setelah baca tutorial ini.