Package: pyCocos
Welcome to pyCocos' DocumentationOverviewpyCocosis a Python library that enables interaction with Cocos Capital REST APIs. It is designed to save developers hours of research and coding required to connect to Cocos Capital REST APIs.DisclaimerpyCocosis not owned by Cocos Capital, and the authors are not responsible for the use of this library.InstallationTo installpyCocos, you can use the following command:pipinstallpycocosAPI CredentialsTo use this library, you need to have the correct authentication credentials.DependenciesThe library has the following dependency:requests>=2.31.0
simplejson>=3.19.1FeaturesThis section describes the functionality and components of the library.Available MethodsInitializationBefore using the library, you need to initialize it with a valid email and password. You can find the token using the browser dev-yTools.RESTThe library provides functions to make requests to the REST API and retrieve the corresponding responses.Functionslogout: Performs a logout.my_data: Retrieves customer information.my_bank_accounts: Retrieves the bank accounts available for withdrawal.my_portfolio: Retrieves the available portfolio.funds_available: Retrieves the available funds for each settlement date.stocks_available: Retrieves the amount of stock available for each settlement date.account_activity: Retrieves the account activity for a given period.portfolio_performance: Retrieves the portfolio performance for a given timeframe.submit_new_bank_account: Sends a new bank account.withdraw_funds: Sends a withdrawal order.submit_buy_order: Sends a buy order.submit_sell_order: Sends a sell order.place_repo_order: Sends a repo (caucion) order.cancel_order: Sends a cancel order request, if possible.order_status: Retrieves the status of one or all orders.get_daily_history: Retrieves the closing price history for a given instrument and period.get_instrument_snapshot: Retrieves the market price information for a given instrument.get_instrument_list_snapshot: Retrieves the market price information for predefined instrument types.search_ticker: Queries the API to search for a particular instrument based on the name.market_status: Retrieves the status of the market session.instruments_rules: Retrieves the price rules for every type of instrument.get_dolar_mep_info: Retrieves the Cocos Capital "closed" Dolar MEP quote.get_cocos_university_articles: Retrieves the University articles from the Cocos Capital app's homepage.All functions return a dictionary representing the JSON response.WebsocketCocos Capital uses SocketIO for real-time quote updates. These methods are not available in the library at the moment.EnumerationsThe library also provides enumerations to help developers avoid errors and improve readability.Currencies: Identifies the available currencies in the app.OrderTypes: Identifies the available order types.OrderSides: Identifies the order sides.Segments: Identifies the different market segments.InstrumentTypes: Identifies the instrument types.InstrumentSubTypes: Identifies the instrument subtypes.Settlements: Identifies the different settlement dates.PerformanceTimeframes: Identifies the different timeframes available in the performance report.UsageOnce the library has been installed, you can import and initialize it. The initialization sets the email, password, and reCAPTCHA token. It then attempts to authenticate with the provided credentials. If the authentication fails, anApiExceptionis thrown.frompycocosimportCocosapp=Cocos(email="sample@email.com",password="S4mp13.p4ssW0rd")REST# Get the available portfolio with the current market valuationapp.my_portfolio()# Get the available fundsapp.funds_available()# Send a withdrawal order of 1000 pesosapp.withdraw_funds(currency=app.currencies.PESOS,amount="1000",cbu_cvu="0123456789012345678912")# Get the long ticker for AL30 with T+2 settlementlong_ticker=app.long_ticker(ticker="AL30",settlement=app.settlements.T2,currency=app.currencies.PESOS)# Send a buy order for 200 AL30 bonds with T+2 settlement at $9000. By default, all orders are *LIMIT* orders.order=app.submit_buy_order(long_ticker=long_ticker,quantity="200",price="9000")# Cancel an order by order_idapp.cancel_order(order_number=order['Orden'])# Get the quoteboard for "Acciones panel Lideres", T+2 settlement, traded in Pesosapp.instrument_list_snapshot(instrument_type=app.instrument_types.ACCIONES,instrument_subtype=app.instrument_subtypes.LIDERES,settlement=app.settlements.T2,currency=app.currencies.PESOS,segment=app.segments.DEFAULT)For more information you can check thisarticle.Official API DocumentationThere is no official API documentation for this library. The library was created by webscraping the app.AcknowledgementsThis library was created with the support of the Scrappers Argentinos and Inversiones y Algoritmos Telegram Groups.