Skip to main content

Overview

ChuchoBot calculates profit and loss (P&L) for arbitrage opportunities based on configured commissions and market rights. Accurate configuration is essential for realistic P&L estimates.

Commission Types

ChuchoBot handles three types of fees:
  1. Trading Commission - Broker commission per trade
  2. Market Rights - BYMA fees (varies by instrument type)
  3. Caución Commissions - Fees for borrowing/lending operations

Trading Commission

The general trading commission can be configured in the Arbitrage Scanner window.
1

Open Arbitrage Scanner

Launch the arbitrage scanner from the main menu.
2

Locate Commission Field

Find the commission percentage field (default: 0.10%)
3

Enter Your Broker's Commission

Update with the actual commission rate your broker charges.
The default commission is set to 0.10% per operation. This may vary significantly depending on your broker and account type.

Market Rights (Derechos de Mercado)

BYMA (Bolsas y Mercados Argentinos) charges different market rights depending on the instrument type. ChuchoBot automatically applies the correct rate based on the instrument.

Market Rights Rates

Applied to instruments listed in the AccionesCEDEARs setting.Examples: AAPL, MSFT, GOOGL, GGAL, YPFD, MELI, etc.
<setting name="DerechoMercadoAccionCEDEAR" serializeAs="String">
  <value>0.08</value>
</setting>
Applied to instruments listed in the Letras setting.Examples: S01L4, S14J4, S26L4, S30G4, etc.
<setting name="DerechoMercadoLetra" serializeAs="String">
  <value>0.001</value>
</setting>
Applied to all other instruments not in the above categories.Examples: AL30, GD30, AL35, GD35, etc.
<setting name="DerechoMercado" serializeAs="String">
  <value>0.01</value>
</setting>

Configuring Market Rights

Market rights are configured in the ChuchoBot.exe.config file:
<applicationSettings>
  <Primary.WinFormsApp.Properties.Settings>
    <!-- Bonds (default) -->
    <setting name="DerechoMercado" serializeAs="String">
      <value>0.01</value>
    </setting>
    
    <!-- Stocks and CEDEARs -->
    <setting name="DerechoMercadoAccionCEDEAR" serializeAs="String">
      <value>0.08</value>
    </setting>
    
    <!-- Treasury Bills -->
    <setting name="DerechoMercadoLetra" serializeAs="String">
      <value>0.001</value>
    </setting>
  </Primary.WinFormsApp.Properties.Settings>
</applicationSettings>
Official BYMA market rights documentation: BYMA Market Rights PDF

Caución Commissions

Caución operations (repo/reverse repo) have specific commission rates that must be configured for accurate arbitrage calculations.

Configuration in Arbitrage Scanner

These values are configured in the arbitrage scanner window:
  • Comisión Tomadora (TNA) - Annual rate for borrowing (taking) caución
  • Comisión Colocadora (TNA) - Annual rate for lending (placing) caución
1

Open Arbitrage Scanner

Navigate to Arbitrajes de Plazos in the main menu.
2

Locate Caución Fields

Find the caución commission fields in the scanner window.
3

Enter TNA Rates

  • Comisión Tomadora (TNA): Enter your broker’s rate (default: 4%)
  • Comisión Colocadora (TNA): Enter your broker’s rate (default: 1.5%)

Default Caución Rates

In the config file:
<userSettings>
  <Primary.WinFormsApp.Properties.Settings>
    <setting name="ArancelCaucionTomadora" serializeAs="String">
      <value>4</value>
    </setting>
    <setting name="ArancelCaucionColocadora" serializeAs="String">
      <value>1.5</value>
    </setting>
  </Primary.WinFormsApp.Properties.Settings>
</userSettings>
The default caución commission values are arbitrary. You MUST configure these with your broker’s actual rates for accurate P&L calculations.

Per-Instrument Configuration

Some instruments require special handling. ChuchoBot pre-configures hundreds of instruments in specific categories.

Adding Instruments to Categories

Edit the AccionesCEDEARs setting in ChuchoBot.exe.config:
<setting name="AccionesCEDEARs" serializeAs="Xml">
  <value>
    <ArrayOfString xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <string>AAPL</string>
      <string>MSFT</string>
      <!-- Add your instrument -->
      <string>NEWINST</string>
    </ArrayOfString>
  </value>
</setting>
Edit the Letras setting:
<setting name="Letras" serializeAs="Xml">
  <value>
    <ArrayOfString xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <string>S01L4</string>
      <string>S30G4</string>
      <!-- Add your letra -->
    </ArrayOfString>
  </value>
</setting>

Verifying P&L Accuracy

After configuring commissions:
  1. Open an arbitrage detail window (double-click any opportunity)
  2. Compare calculated P&L with your manual calculations
  3. Verify that all fees are being applied correctly
  4. Adjust commission rates if needed
Arbitrage Detail

Complete Example Configuration

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <userSettings>
    <Primary.WinFormsApp.Properties.Settings>
      <!-- Trading Commission -->
      <setting name="Comision" serializeAs="String">
        <value>0.10</value>
      </setting>
      
      <!-- Caución Commissions (TNA) -->
      <setting name="ArancelCaucionTomadora" serializeAs="String">
        <value>4</value>
      </setting>
      <setting name="ArancelCaucionColocadora" serializeAs="String">
        <value>1.5</value>
      </setting>
    </Primary.WinFormsApp.Properties.Settings>
  </userSettings>
  
  <applicationSettings>
    <Primary.WinFormsApp.Properties.Settings>
      <!-- Market Rights -->
      <setting name="DerechoMercado" serializeAs="String">
        <value>0.01</value>
      </setting>
      <setting name="DerechoMercadoAccionCEDEAR" serializeAs="String">
        <value>0.08</value>
      </setting>
      <setting name="DerechoMercadoLetra" serializeAs="String">
        <value>0.001</value>
      </setting>
    </Primary.WinFormsApp.Properties.Settings>
  </applicationSettings>
</configuration>
Always restart ChuchoBot after modifying the config file for changes to take effect.

Build docs developers (and LLMs) love