Tutoriels

Mettre à jour le pool de configuration de ton bot

 

Pour faire des requêtes API, il va te falloir créer une application et avoir un jeton d'accès. Si tu n'as pas encore créé de jeton d'accès, suis d'abord le tutoriel Obtenir un jeton d'accès avec Oauth2.

Étape 1 : Récupérer les pools de configuration de ton bot

Pour récupérer les pools de configuration de ton bot, tu vas devoir faire une requête GET à l'endpoint /hopper/{id}/config/pool, où {id} est l'identifiant de ton bot.

Endpoint API :

https://api.cryptohopper.com/v1/hopper/{id}/config/pool

Si la requête API réussit, tu recevras une réponse JSON avec les pools de configuration de ton bot dans le champ data.

Exemple de réponse JSON :

{
  "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"
    }
  ]
}

Étape 2 : Mettre à jour un pool de configuration de ton bot.

Maintenant que tu as récupéré les pools de configuration de ton bot, on peut mettre à jour l'un de ces pools en envoyant une requête PATCH au même endpoint que celui utilisé à l'étape précédente. Tu devras fournir l'identifiant de la configuration (dans {pool_id}) et la configuration mise à jour. Dans cet exemple, on va modifier le stop_loss_trailing_percentage en 0.75.

Endpoint API :

https://api.cryptohopper.com/v1/hopper/{id}/config/{pool_id}

Exemple de requête JSON PATCH :

{
  "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"
  }
}

Si la requête API réussit, tu recevras une réponse 200 avec un message indiquant que le pool de configuration a été mis à jour.

Exemple de réponse JSON :

{
  "data": "Config pool updated."
}

J'espère que tu as réussi à mettre à jour un pool de configuration de ton bot après avoir lu ce tutoriel.