Saltar al contenido principal

Requisitos Previos

Antes de empezar, necesitas:
1

API Key

Obtener tu API key desde el panel de configuracion
2

Entorno de Desarrollo

Python 3.8+ o Node.js 16+ instalado

Paso 1: Instalar Dependencias

pip install requests
npm install axios

Paso 2: Obtener Datos de Mercado

Primero, obtengamos las barras OHLC del par que quieres analizar:
import requests

API_KEY = "tu_api_key_aqui"
BASE_URL = "https://api.innova-trading.com"

# Obtener ultimas 100 barras de EURUSD en H1
response = requests.get(
    f"{BASE_URL}/api/external/bars/EURUSD/60",
    params={"limit": 100},
    headers={"Authorization": f"Bearer {API_KEY}"}
)

barras = response.json()["bars"]
print(f"Obtenidas {len(barras)} barras")
print(f"Ultima barra: {barras[-1]}")
const axios = require('axios');

const API_KEY = "tu_api_key_aqui";
const BASE_URL = "https://api.innova-trading.com";

async function obtenerBarras() {
  const response = await axios.get(
    `${BASE_URL}/api/external/bars/EURUSD/60`,
    {
      params: { limit: 100 },
      headers: { Authorization: `Bearer ${API_KEY}` }
    }
  );

  const barras = response.data.bars;
  console.log(`Obtenidas ${barras.length} barras`);
  console.log("Ultima barra:", barras[barras.length - 1]);
  return barras;
}

obtenerBarras();
La respuesta incluye:
{
  "bars": [
    {
      "time": 1765540800,
      "open": 1.0920,
      "high": 1.0950,
      "low": 1.0900,
      "close": 1.0935,
      "volume": 15000
    }
  ]
}

Paso 3: Crear una Senal

Ahora creemos una senal de COMPRA simple:
# Obtener la ultima barra
ultima_barra = barras[-1]

# Crear senal de COMPRA
senal = {
    "symbol": "EURUSD",
    "timeframe": 60,
    "indicator_name": "Mi Primera Senal",
    "points": [
        {
            "time": ultima_barra["time"],  # IMPORTANTE: usar el time de la barra
            "type": "low",                  # Debajo de la vela
            "price": ultima_barra["low"] - 0.0005,  # Un poco debajo del minimo
            "label": "COMPRA",
            "color": "#3b82f6",            # Azul
            "shape": "arrowUp",
            "size": 2
        }
    ]
}
// Obtener la ultima barra
const ultimaBarra = barras[barras.length - 1];

// Crear senal de COMPRA
const senal = {
  symbol: "EURUSD",
  timeframe: 60,
  indicator_name: "Mi Primera Senal",
  points: [
    {
      time: ultimaBarra.time,              // IMPORTANTE: usar el time de la barra
      type: "low",                          // Debajo de la vela
      price: ultimaBarra.low - 0.0005,     // Un poco debajo del minimo
      label: "COMPRA",
      color: "#3b82f6",                    // Azul
      shape: "arrowUp",
      size: 2
    }
  ]
};

Paso 4: Enviar a InnovaTrading

response = requests.post(
    f"{BASE_URL}/api/external/indicators/mi_primera_senal",
    json=senal,
    headers={
        "Authorization": f"Bearer {API_KEY}",
        "Content-Type": "application/json"
    }
)

resultado = response.json()
print(f"Exito! Puntos enviados: {resultado['points_received']}")
print(f"Expira en: {resultado['expires_at']}")
const response = await axios.post(
  `${BASE_URL}/api/external/indicators/mi_primera_senal`,
  senal,
  {
    headers: {
      Authorization: `Bearer ${API_KEY}`,
      "Content-Type": "application/json"
    }
  }
);

console.log(`Exito! Puntos enviados: ${response.data.points_received}`);
console.log(`Expira en: ${response.data.expires_at}`);

Paso 5: Ver en el Chart

  1. Abre InnovaTrading en tu navegador
  2. Ve al chart de EURUSD en timeframe H1
  3. Abre el panel de Indicadores Externos
  4. Tu indicador “Mi Primera Senal” deberia aparecer
  5. Activa el toggle para verlo en el chart
Felicidades! Has creado tu primer indicador externo.

Codigo Completo

import requests

API_KEY = "tu_api_key_aqui"
BASE_URL = "https://api.innova-trading.com"
headers = {"Authorization": f"Bearer {API_KEY}"}

# 1. Obtener barras
response = requests.get(
    f"{BASE_URL}/api/external/bars/EURUSD/60",
    params={"limit": 100},
    headers=headers
)
barras = response.json()["bars"]

# 2. Crear senal
ultima_barra = barras[-1]
senal = {
    "symbol": "EURUSD",
    "timeframe": 60,
    "indicator_name": "Mi Primera Senal",
    "points": [
        {
            "time": ultima_barra["time"],
            "type": "low",
            "price": ultima_barra["low"] - 0.0005,
            "label": "COMPRA",
            "color": "#3b82f6",
            "shape": "arrowUp",
            "size": 2
        }
    ]
}

# 3. Enviar
response = requests.post(
    f"{BASE_URL}/api/external/indicators/mi_primera_senal",
    json=senal,
    headers={**headers, "Content-Type": "application/json"}
)

print(response.json())
const axios = require('axios');

const API_KEY = "tu_api_key_aqui";
const BASE_URL = "https://api.innova-trading.com";
const headers = { Authorization: `Bearer ${API_KEY}` };

async function main() {
  // 1. Obtener barras
  const barsResponse = await axios.get(
    `${BASE_URL}/api/external/bars/EURUSD/60`,
    { params: { limit: 100 }, headers }
  );
  const barras = barsResponse.data.bars;

  // 2. Crear senal
  const ultimaBarra = barras[barras.length - 1];
  const senal = {
    symbol: "EURUSD",
    timeframe: 60,
    indicator_name: "Mi Primera Senal",
    points: [
      {
        time: ultimaBarra.time,
        type: "low",
        price: ultimaBarra.low - 0.0005,
        label: "COMPRA",
        color: "#3b82f6",
        shape: "arrowUp",
        size: 2
      }
    ]
  };

  // 3. Enviar
  const response = await axios.post(
    `${BASE_URL}/api/external/indicators/mi_primera_senal`,
    senal,
    { headers: { ...headers, "Content-Type": "application/json" } }
  );

  console.log(response.data);
}

main();

Siguientes Pasos

Formato de Senales

Aprende a crear senales con Entry, SL y TPs

Tu Primer Indicador

Tutorial completo: MA Crossover