From eeb07620d09c6e1d3dc74f8152b96750585bd5c8 Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Fri, 7 Feb 2025 14:33:28 -0800 Subject: [PATCH] create dummy trading view provider --- packages/client-coinbase/src/index.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/client-coinbase/src/index.ts b/packages/client-coinbase/src/index.ts index c9114ce0b7..3aadf4091e 100644 --- a/packages/client-coinbase/src/index.ts +++ b/packages/client-coinbase/src/index.ts @@ -32,6 +32,7 @@ import { getPriceInquiry } from "../../plugin-0x/src/actions/getIndicativePrice" import { getQuoteObj } from "../../plugin-0x/src/actions/getQuote"; import { privateKeyToAccount } from "viem/accounts"; import { base } from "viem/chains"; +import axios from 'axios'; export type WalletType = | "short_term_trading" @@ -52,6 +53,7 @@ export class CoinbaseClient implements Client { this.runtime.providers.push(pnlProvider); this.runtime.providers.push(balanceProvider); this.runtime.providers.push(addressProvider); + this.runtime.providers.push(tradingSignalBackTestProvider) this.server = express(); this.port = Number(runtime.getSetting("COINBASE_WEBHOOK_PORT")) || 3001; this.wallets = []; @@ -582,4 +584,17 @@ export const addressProvider: Provider = { }, }; +export const tradingSignalBackTestProvider: Provider = { + get: async (runtime: IAgentRuntime, _message: Memory) => { + const url = 'https://api.tradingview.com/alerts'; // Hypothetical endpoint + try { + const response = await axios.get(url); + return `Net Profit: ${response.data.netProfit}, Total Trades Closed: ${response.data.totalTradesClosed}, Percentage Profitable: ${response.data.percentageProfitable}, Profit Factor: ${response.data.profitFactor}, Max Drawdown: ${response.data.maxDrawdown}, Average Trade: ${response.data.averageTrade}, Number of Bars per Trade: ${response.data.numberOfBarsPerTrade}, Win Rate: ${response.data.winRate}, Time Period: ${response.data.timePeriod}`; + } catch (error) { + elizaLogger.error('Error fetching TradingView alerts:', error); + throw error; + } + }, +}; + export default CoinbaseClientInterface;