C'est le Google. Appel de la fonction Gémeaux permet aux modèles de demander des outils, ce qui rend Gemini utile pour les applications macro qui ont besoin de données actuelles au lieu de commentaires génériques sur le marché.
- Des développeurs construisent un assistant de recherche FX ou macro alimenté par Gemini.
- Les équipes de fintech décident si l'appel de fonction Gemini, REST, MCP ou A2A est la bonne limite d'intégration.
- Les analystes qui ont besoin de Gemini pour citer les versions actuelles de FXMacroData, les calendriers, le COT, la session et le contexte du marché au comptant avant de répondre.
Pré-requis
- Une clé API de Google AI Studio ou Vertex AI Gemini.
- Une clé API FXMacroData pour les familles de terminaux protégés.
- Un back-end où les secrets peuvent être stockés en toute sécurité.
- Python 3.11 ou plus récent pour les exemples ci-dessous.
- Un flux de travail spécifique de l'utilisateur, tel que "précisez-moi le risque d'événement USD suivant" ou "résumez le contexte macro EUR/USD".
Cet article se concentre sur les appels de fonctionnalités de l'API Gemini, pas sur les retraités Actions sur les actions de conversation de Google Si vous voulez une application vocale plus tard, cela signifie probablement construire une vraie application Android et ensuite évaluer les actions de l'application ou les fonctions de l 'application.
1. Choisissez la bonne surface Google
Google a plusieurs surfaces de nom similaire. Elles ne sont pas interchangeables. Pour FXMacroData, la fraction utile ressemble à ceci:
| Surface | Utiliser maintenant ? | Meilleure utilisation |
|---|---|---|
| Appel à la fonction Gemini API | - Je sais . | Des applications personnalisées, des outils d'analyse, des démos et des assistants de back-end. |
| Le constructeur d'agents d'IA de Vertex | Évaluer | Prototypes d'entreprise hébergés une fois que le modèle d'outil local fonctionne. |
| Gemini CLI avec MCP | - Je sais . | Des flux de travail pour développeurs pouvant se connecter au serveur MCP FXMacroData. |
| Actions ou fonctions d'applications Android | Plus tard . | Les actions d'application mobile après qu'il y ait une vraie application Android. |
| Actions sur les actions de conversation de Google | - Je ne sais pas. | Retiré pour le vieux modèle "parlez à mon action". |
Le reste de ce guide utilise l'API Gemini. Vous pouvez toujours exposer les mêmes données à travers Le code de la banque est le code de l'établissement. pour les clients sensibles à MCP, mais une application Gemini API nécessite généralement des déclarations de fonction explicites et un dispatcher dans votre propre backend.
2. Dessinez l'architecture
Une application Gemini ne devrait pas demander au modèle de mémoriser les valeurs de macro. L'application devrait laisser Gemini décider quelle fonction de données appeler, puis acheminer cet appel de fonction vers FXMacroData.
"Qu'est-ce qui est important pour l'EUR/USD cette semaine?"
Choisissez les fonctions calendrier, devises et taux de l'assurance.
Appelez FXMacroData avec les informations d'identification du côté serveur.
Retournez le contexte macro concise et les liens.
Cette division permet de garder les responsabilités claires. Gemini gère l'interprétation. FXMacroData fournit des données macro et FX structurées. Votre backend gère les identifiants, les journaux et les garde-corps de produits.
3. Commencez par un seul emploi
Ne commencez pas par chaque point final, mais par un flux de travail qu'un trader ou un analyste utiliserait réellement:
Help a user understand the next major USD release, recent inflation context,
and whether EUR/USD has relevant spot-market context.
Ce flux de travail ne nécessite que quelques fonctionnalités FXMacroData:
- Calendrier de sortie pour les événements à venir.
- Inflation en dollars américains l'historique pour le contexte macro récent.
- Le taux de change l'historique des points pour le contexte de paire.
- Facultatif USD COT positionner lorsque l'invite demande de l'affluence.
4. Define Gemini functions for the data calls
L'appel de fonction Gemini fonctionne mieux lorsque les fonctions sont étroites, clairement nommées et faciles à choisir pour le modèle.
{
"name": "fxmacro_calendar",
"description": "Fetch the FXMacroData macro release calendar for a currency.",
"parameters": {
"type": "object",
"properties": {
"currency": {
"type": "string",
"description": "Currency code such as usd, eur, gbp, jpy, aud, cad."
}
},
"required": ["currency"]
}
}
Une première version solide a généralement besoin de ces fonctions:
| Fonction | Point de fin de la base de données FXMacroData | Utilisez-le quand l'utilisateur demande... |
|---|---|---|
fxmacro_calendar |
/api/v1/calendar/{currency} |
Qu'est-ce qui est en train de se passer ? |
fxmacro_announcements |
/api/v1/announcements/{currency}/{indicator} |
Qu'est-il arrivé à l'IPC, au PIB, aux salaires ou aux taux de l'impôt ? |
fxmacro_forex |
/api/v1/forex/{base}/{quote} |
Comment se sont-ils déplacés ? |
fxmacro_cot |
/api/v1/cot/{currency} |
Le positionnement est bondé ? |
fxmacro_market_sessions |
/api/v1/market_sessions |
Quelles séances de change sont ouvertes ? |
Vous pouvez l'étendre plus tard aux matières premières, aux différentiels de taux, aux courbes, aux nouvelles, aux communiqués de presse de la banque centrale et aux prédictions.
5. Gardez le répartiteur du côté serveur
Votre dispatcher est la partie qui correspond au nom de la fonction et aux arguments de Gemini aux appels REST FXMacroData.
import os
import requests
API_BASE = "https://fxmacrodata.com/api/v1"
def call_fxmacrodata(name, args):
if name == "fxmacro_calendar":
path = f"/calendar/{args['currency'].lower()}"
params = {}
elif name == "fxmacro_forex":
path = f"/forex/{args['base'].lower()}/{args['quote'].lower()}"
params = {k: args[k] for k in ("start_date", "end_date") if k in args}
else:
raise ValueError(f"Unsupported function: {name}")
api_key = os.environ.get("FXMACRODATA_API_KEY")
if api_key:
params["api_key"] = api_key
response = requests.get(f"{API_BASE}{path}", params=params, timeout=30)
response.raise_for_status()
return response.json()
Le détail important est la manipulation des informations d'identification. Les exemples publics devraient montrer le modèle de paramètre de requête, mais une application Gemini de production devrait lire la clé d'un gestionnaire secret ou d'une variable d'environnement et ne jamais la mettre dans l'invite.
6. Laissez les Gémeaux demander des outils, puis retournez le résultat
Le code exact du SDK Gemini varie selon le projet, mais la boucle a la même forme:
from google import genai
from google.genai import types
client = genai.Client(api_key=os.environ["GEMINI_API_KEY"])
tools = [types.Tool(function_declarations=[calendar_declaration])]
response = client.models.generate_content(
model="gemini-2.5-flash",
contents="Show the next USD releases and explain the EUR/USD risk.",
config=types.GenerateContentConfig(tools=tools),
)
for part in response.candidates[0].content.parts:
if part.function_call:
result = call_fxmacrodata(part.function_call.name, dict(part.function_call.args))
# Send result back as a function response, then ask Gemini to finalize.
Dans la production, vous envelopperiez ceci dans une boucle: recevoir la réponse du modèle, exécuter les appels de fonction, ajouter les réponses de fonction et demander à Gemini la réponse finale.
7. Ajoutez une instruction système qui maintient les réponses en place
L'instruction système doit préciser la hiérarchie des données:
You are a macro research assistant. Use FXMacroData tools before answering
questions about live, recent, historical, calendar, FX, COT, commodity,
or structured macro data. If FXMacroData returns no data, say that clearly.
Do not invent values or timestamps. Keep financial wording informational
and avoid investment advice.
Cette instruction est assez courte pour être maintenue et suffisamment spécifique pour arrêter le mode de défaillance le plus courant: un modèle écrivant un résumé macro plausible sans vérifier les données.
8. Ajoutez des chemins REST et MCP à côté de Gemini
Une bonne application Gemini n'a pas besoin d'utiliser une surface d'intégration pour chaque travail.
curl "https://fxmacrodata.com/api/v1/announcements/usd/inflation?api_key=YOUR_API_KEY"
MCP est préférable lorsque l'hôte prend déjà en charge la découverte MCP. Par exemple, un client local compatible peut pointer vers:
{
"servers": {
"FXMacroData": {
"type": "http",
"url": "https://fxmacrodata.com/mcp"
}
}
}
A2A est une couche différente. MCP connecte un agent ou un modèle hôte à des outils et des ressources de données. A2 A connecte des agents indépendants les uns aux autres, généralement lorsqu'un agent doit découvrir, envoyer un message ou déléguer du travail à un autre service d'agent. FXMacroData appartient d'abord à la couche données/outils; un enveloppeur A2C ne devient utile que si vous exposez plus tard un agent de recherche FXMacriData dédié pour que d'autres agents puissent l'appeler.
| Modèle | Qui l'utilise ? | Utilisez-le pour FXMacroData quand... |
|---|---|---|
| REST API | Votre application est en arrière-plan | L'application sait déjà à quel point d'appel. |
| MCP | Outils et agents de codage adaptés aux MCP | L'hôte peut découvrir les outils FXMacroData à partir d'un serveur MCP distant. |
| Appel de la fonction Gémeaux | Votre application Gémeaux est en cours d' exécution | Gemini devrait choisir une fonction de données macro étroite pendant une réponse. |
| A2A | Services d'agents indépendants | Vous exposez ou consommez un agent à distance complet, pas seulement un point de terminaison de données. |
Utilisez l'appel de fonction Gemini lorsque vous créez vous-même l'application Gemini. Utiliser MCP lorsque l'hôte sait déjà comment se connecter aux serveurs MCP distants. Utilez REST lorsque votre application sait exactement quel point final appeler. Utilizer A2A uniquement lorsque la limite d'intégration est agent-à-agent, pas application-à données.
9. Construisez un premier écran pratique
Le produit le plus rapide n'est pas une boîte de discussion vide.
- Sélecteur de devise: USD, EUR, GBP, JPY, AUD, CAD.
- Le choix de la paire est effectué par le sélecteur de paires: EUR/USD, USD/JPY, GBP/USD et AUD/USD.
- Les boutons d'action: "Suivi de la prochaine édition", "Inflation la plus récente", "Contextes des taux directeurs", "Vérification du positionnement".
- Panneau de réponse avec audit d'appel d'outil: quelles fonctions FXMacroData ont été utilisées.
- Liens vers le tableau de bord ou la page de documentation correspondante pour une inspection manuelle.
Cela donne à Gemini une tâche limitée et donne à l'utilisateur une réponse auditable. les produits de base pour les devises de base, ajouter Sessions de change pour le contexte du calendrier, ajouter ensuite les communiqués de presse de la banque centrale pour l'interprétation des politiques.
10. Liste de contrôle de la production
- Dans le magasin .
GEMINI_API_KEYJe suis désolé .FXMACRODATA_API_KEYdu côté du serveur seulement. - Enregistrez les noms des outils, les arguments et l'état de la réponse sans enregistrer les clés brutes.
- Retournez "données indisponibles" au lieu de laisser les Gémeaux combler les lacunes.
- Afficher aux utilisateurs les appels FXMacroData qui ont supporté la réponse.
- Séparer le contexte macro du conseil commercial.
- Les appels stables en cache, le cas échéant.
- Gardez les exemples publics sur les URL de production.
Questions fréquemment posées
Les Gémeaux peuvent utiliser FXMacroData ?
Oui. Une application Gemini peut exposer les terminaux REST FXMacroData sous forme de déclarations de fonction, appeler ces fonctions à partir d'un dispatcher côté serveur et transmettre les données macro renvoyées à Gemini pour une réponse à la terre.
Quelle est la façon la plus rapide de créer une application Gemini avec FXMacroData ?
Déclarer un petit ensemble de fonctions Gemini, les exécuter via un dispatcher backend, appeler les terminaux FXMacroData REST avec les informations d'identification côté serveur, et retourner les données macro à Gemini avant qu'il n'écrive la réponse finale.
C'est la même chose qu'une intégration MCP ?
Non. MCP est préférable lorsque l'hôte prend déjà en charge les serveurs MCP distants. L'appel de fonction Gemini est utile lorsque vous créez vous-même une application Gemini et que vous avez besoin de déclarations de fonction explicites plus un répartiteur.
En quoi c'est différent de A2A ?
A2A est pour la communication entre les services d'agents indépendants. Une application Gemini sur FXMacroData commence généralement comme un accès d'application à données via REST, MCP ou appel de fonction Gemini, et non comme une délégation d'agent à agent.
Vous avez besoin d'une application Android pour ça ?
Vous pouvez créer une application Gemini API utile sans Android. Les actions d'application Android ou les fonctions d'applications deviennent pertinentes plus tard si FXMacroData expédie une vraie application Android.
Sources et références de mise en œuvre
Le modèle de mise en œuvre dans ce guide est basé sur la documentation publique Gemini, FXMacroData et des protocoles d'agents ci-dessous:
- Documentation d'appel de la fonction Gemini API pour les déclarations d'outils et les réponses de fonctions.
- Actions sur Google Conversational Actions avis de coucher du soleil pour savoir pourquoi le vieux chemin Google Actions n'est pas la bonne cible.
- Documentation du protocole Agent2Agent pour la limite d'agent à agent décrite dans la comparaison REST/MCP/Gemini/A2A.
- La documentation de l'API REST de FXMacroData est fournie. pour les chemins d'authentification des terminaux et les cheminages d'API de production.
- Documentation du serveur MCP de FXMacroData pour les clients compatibles avec MCP et la découverte à distance des outils.
Guides liés à FXMacroData
Cet article fait partie du groupe d'intégration d'IA FXMacroData. Utilisez ces guides complémentaires lorsque vous avez besoin d'un hôte, d'une procédure ou d' un chemin de mise en œuvre différent:
- Créer un client MCP pour FXMacroData lorsque votre hôte prend en charge les outils MCP distants.
- Documentation du serveur MCP de FXMacroData pour le point de terminaison canonique du serveur et la configuration de type VS Code.
- Créer un GPT personnalisé ChatGPT avec FXMacroData lorsque la surface cible est ChatGPT plutôt que Gemini.
- Utiliser les terminaux FXMacroData et l'authentification pour le modèle d'identification REST API utilisé par le dispatcher.
- Utiliser FXMacroData avec Google Apps Script et Google Sheets pour un flux de travail Google Workspace qui ne nécessite pas Gemini.
Ce que vous avez construit
Vous avez maintenant le modèle de base pour une application Gemini sur FXMacroData: définissez un petit ensemble de fonctions Gemini, gardez le répartiteur dans votre backend, routez les appels d'outils vers les terminaisons FXMacrodata REST de production et retournez les données retournées à Gemini pour une réponse fondée.
L'étape suivante est de choisir un flux de travail, tel que " risque d'événement USD quotidien " ou " macro briefing EUR/USD ", et de le construire de bout en bout avant d'ajouter plus d'outils.
Pour des intégrations plus larges, consultez le Guide du serveur MCPPour les scripts déterministes et les tableaux de bord, commencez par le Documentation de l'API RESTJe suis désolé .