Vai al contenuto

Creare un elenco di avvisi sul prezzo

Un elenco di avvisi sul prezzo raccoglie i livelli di prezzo che vuoi monitorare senza dover osservare continuamente il grafico. Questa guida ti aiuta a selezionare i simboli, verificare come vengono quotati e quando sono negoziabili, attivare un avviso per ogni livello e infine creare uno script che ricostruisce l’intero elenco in un’unica esecuzione.

Suggerimento

Definisci una sola volta le tue credenziali nelle variabili della shell. Tutti i comandi interattivi seguenti riutilizzano queste variabili, così i passaggi restano semplici e lo script può essere utilizzato in ambienti diversi.

export CTID=letstrade
export ACC=7654321
export PWD_FILE=$HOME/.ctrader/pwd

1. Selezionare i simboli da monitorare

symbols elenca tutti gli strumenti disponibili sul conto. Salva l’output per individuare i nomi esatti da utilizzare nei passaggi successivi.

ctrader-cli symbols --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC > symbols.txt

Usa i nomi esattamente come sono visualizzati. Un nome non corrispondente restituisce Unknown symbol name.

2. Consultare i prezzi attuali dei simboli selezionati

prices restituisce i prezzi bid e ask attuali di più simboli con un solo comando, così puoi impostare i livelli in base al mercato in tempo reale anziché affidarti alla memoria.

ctrader-cli prices --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
    --symbols=EURUSD,GBPUSD,XAUUSD

Per un solo strumento, usa invece price con --symbol.

ctrader-cli price --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q --symbol=EURUSD

3. Verificare la precisione di quotazione del simbolo

symbol mostra i dettagli di un singolo strumento, compreso il numero di cifre decimali utilizzate per quotarlo. Adatta il prezzo dell’avviso al numero di cifre previsto, per impostare esattamente il livello desiderato.

ctrader-cli symbol --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q --symbol=XAUUSD

4. Controllare quando il mercato è aperto

sessions elenca le sessioni di trading di un simbolo con i relativi orari di apertura e chiusura. Un livello impostato durante la chiusura del mercato non verrà verificato fino alla riapertura. È particolarmente importante per metalli, indici e strumenti le cui negoziazioni si interrompono nel fine settimana.

ctrader-cli sessions --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q --symbol=XAUUSD

5. Attivare un avviso per ogni livello

alert create richiede il simbolo, il prezzo e la condizione che attiva l’avviso. Aggiungi --message per descrivere l’avviso e riconoscerne lo scopo quando si attiva, e --yes per saltare la richiesta di conferma in uno script.

La condizione può essere above oppure below. Gli avvisi confrontano il prezzo Bid del simbolo con il livello impostato.

ctrader-cli alert create --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
    --symbol=EURUSD --price=1.1050 --condition=above \
    --message="EURUSD breaks range high" --yes

Ripeti l’operazione per ogni livello di ciascun simbolo. Ogni avviso riguarda un solo prezzo di un solo simbolo.

Nota

Valori accettati: above, below.

6. Verificare l’elenco degli avvisi ed eliminare quelli obsoleti

alerts mostra tutti gli avvisi attualmente attivi sul conto. Eseguilo dopo ogni modifica per verificare che l’elenco corrisponda alle tue intenzioni.

ctrader-cli alerts --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q

Elimina un singolo avviso tramite il suo identificativo quando il livello è stato raggiunto o quando lo scenario che lo aveva motivato non è più rilevante.

ctrader-cli alert delete --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
    --alert=44556677 --yes

Per ripartire da un elenco vuoto, all elimina tutti gli avvisi del conto.

ctrader-cli alert delete all yes --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q

Nella shell interattiva, lo stesso comando si scrive > alert delete all yes.

7. Ricreare l’intero elenco di avvisi con uno script

Salva la sequenza come price-alert-list.sh. Lo script elimina i vecchi avvisi, attiva tutti i livelli definiti nell’array PRICE_ALERT_LIST e mostra il risultato. In questo modo, con una sola esecuzione ottieni l’elenco impostato all’inizio dello script, indipendentemente dallo stato precedente.

Ogni voce contiene un simbolo, un prezzo, una condizione e un messaggio, separati da |.

#!/usr/bin/env bash
set -euo pipefail

CTID=letstrade
ACC=7654321
PWD_FILE=$HOME/.ctrader/pwd

PRICE_ALERT_LIST=(
    "EURUSD|1.1050|above|EURUSD breaks range high"
    "EURUSD|1.0900|below|EURUSD loses range low"
    "XAUUSD|2400.00|above|Gold at round number"
)

cli() {
    ctrader-cli "$@" --ctid="$CTID" --pwd-file="$PWD_FILE" --account="$ACC" -q
}

# Start from a clean list so the array below is the single source of truth.
cli alert delete all yes

# Arm every level in the price-alert list.
for ENTRY in "${PRICE_ALERT_LIST[@]}"; do
    IFS='|' read -r SYMBOL PRICE CONDITION MESSAGE <<< "$ENTRY"
    echo "Arming $SYMBOL at $PRICE ($CONDITION)"
    cli alert create --symbol="$SYMBOL" --price="$PRICE" \
        --condition="$CONDITION" --message="$MESSAGE" --yes
done

# Confirm what is armed.
cli alerts

Esegui bash price-alert-list.sh ogni volta che modifichi i livelli. Poiché lo script elimina tutti gli avvisi prima di ricrearli, modifica l’array anziché aggiungere avvisi manualmente: verrebbero eliminati all’esecuzione successiva.

La documentazione di riferimento di cTrader CLI elenca tutte le opzioni disponibili per i comandi utilizzati in questa procedura.

Avvertenza

cTrader CLI è uno strumento per il trading e l’automazione. Non fornisce consulenza finanziaria, d’investimento, legale o fiscale. I comandi che inseriscono o modificano ordini possono dare origine a operazioni reali e causare perdite. Verifica ogni comando prima di eseguirlo, esegui i primi test su un conto demo e proteggi le tue credenziali.