Ingressi e uscite su valori diversi da quelli indicati nel codice

Viewing 15 posts - 1 through 15 (of 26 total)
  • Author
    Posts
  • #163960 quote
    cito.alma
    Participant
    Junior

    Salve, ho un problema con gli ingressi e le uscite di un codice su i

    future cme-mini .

    • Future utilizzato : Micro E-mini S&P500 Full0621 (Il problema si verifica su altri future)
    • Orario di trading: UTC-6 (il problema rimane anche se utilizzo l’orario del pc)
    DEFPARAM CumulateOrders = False 
    
    BUY 1 contract AT DHigh(0) stop
    SELL 1 contract AT DLow(0) stop

    In pratica deve comprare alla rottura del massimo del giorno precedente

    e vendere al minimo del giorno precedente.

    Questo non accade e vende e compra su livelli a caso, di seguito lo screenshot.

    Qualcuno può Aiutarmi?

    Grazie in anticipo.

    problema.png problema.png
    #163967 quote
    robertogozzi
    Moderator
    Master

    Dovrebbe essere dovuto al fatto che il nuovo giorno inizia alle  06:00 di mattina, non alle 00:00. Questo perché va con gli orari della Borsa di Chicago.

    Creati questi indicatori, una sola riga ciascuno e vedrai le differenze con altri strumenti:

    Return OpenDay       as “OpenDay”
    Return OpenDate      as “OpenDate”
    Return OpenDayOfWeek as “OpenDayOfWeek”
    Return OpenTime      as “OpenTime”
    #163968 quote
    robertogozzi
    Moderator
    Master

    Falli girare su un time frame di 1 ora o inferiore.

    #163970 quote
    cito.alma
    Participant
    Junior

    Grazie per la celere risposta.

    • Ho provato i vari indicatori, ma non ricavo informazioni che mi possono aiutare;
    • Non posso scendere di time frame perché ho una versione di prova;
    • Ho provato a cambiare fuso orario del mio pc, usando UTC-6 ma il problema sussiste;
    • Ho provato ad utilizzare  la funzione fuso orario messa a disposizione da prorealtime (vedi allegato) ma niente.

    Potresti gentilmente provare a lanciare il codice su Micro E-mini S&P500 Full0621

    timeframe daily per vedere se succede anche a te?

    Grazie e buon sabato

    problema2.png problema2.png
    #163973 quote
    robertogozzi
    Moderator
    Master

    Purtroppo con i dati fine giornata non puoi fare prove.

    Ci sono vari tipi di futures SP500 e non hanno tutti gli stessi orari di trading e d’inizio e fine giornata.

    #163978 quote
    cito.alma
    Participant
    Junior

    Chiedo a qualcuno della comunità con conto reale, se eseguendo il codice postato all’inizio con time frame orario ha ingressi e uscite coerenti.

    Buona giornata

    #163979 quote
    cito.alma
    Participant
    Junior

    su Micro E-mini S&P500 Full0621

    #164022 quote
    robertogozzi
    Moderator
    Master

    Per entrare sul giorno precedente devi usare (1), non (0) alle righe 3-4.

    #164026 quote
    cito.alma
    Participant
    Junior

    Il codice è giusto:

    -è un ordine stop che si attiva al superamento del max o del min del giorno precedente.

    L’ho fatto girare su euro bund (nostro fuso orario) e funzione in allegato le entry della strategia

    #164028 quote
    robertogozzi
    Moderator
    Master

    Il giorno precedente è (1), non (0).

    #164029 quote
    cito.alma
    Participant
    Junior
    #164033 quote
    cito.alma
    Participant
    Junior

    provare per credere.

    se inserisco (1)

    DEFPARAM CumulateOrders = False

    BUY 1 contract AT DHigh(1) stop
    SELL 1 contract AT DLow(1) stop

    prende il max o min di due giorni fa

    Immagine_1.png Immagine_1.png
    #164038 quote
    robertogozzi
    Moderator
    Master

    Su grafuici intraday funziona, sul daily no.

    Come ti ho detto per questo strumento le candele dalle 00:00 alle 06:00 fanno parte del giorno PRECEDENTE, il nuovo giorno inizia alle 07:00.

    Dclose, Dhigh, Dlowe Dopen sono fatte per i timeframe intraday, sul daily usa normalmente Open, High, Low, e Close, senza niente o con [0] per la barra corrente che è quella appena chiusa, oppure con [1] per quella precedente a quella chiusa.

    Inoltre aggiungi queste righe alla fine del tuo codice, vedrai le linee sul grafico dei valori minimi e massimi:

    N = 0     //1 per iul giorno precedente
    graphonprice dhigh(N) coloured(0,0,255,255)
    graphonprice dlow(N)  coloured(255,0,0,255)
    graphonprice high[N] coloured(0,255,0,255)
    graphonprice low[N]  coloured(0,128,0,200)

    C’è poi da considerare che tu usi un ordine STOP per il BUY, ma se il prezzo attuale fosse maggiore del prezzo d’entrata occorerebbe LIMIT.

    #164039 quote
    cito.alma
    Participant
    Junior

    Se il prezzo ,ad esempio di apertura della nuova barra, fosse più alto del dhigh(0) allora  l’ ordine stop sarebbe trattato come un ordine market, entrando appena possibile.

    #164301 quote
    cito.alma
    Participant
    Junior

    Continuano le mie frustranti prove su future stranieri.

    Ho provato a fare le cose semplici:

    • compra all’open della prossima barra  al meglio, se il max di oggi è superiore a quello di ieri.
    • chiudo al contrario
    DEFPARAM CumulateOrders = False
    
    if high>high[1] then
    BUY 1 contract AT market nextbaropen
    endif
    if low<low[1] then
    SELL 1 contract AT market nextbaropen
    endif
    y=high[1]
    graphonprice y

    Risultato:

    • non compra e vende a caso

    Sono io che non sono capace ho è la piattaforma che non va?

    prova3.png prova3.png
Viewing 15 posts - 1 through 15 (of 26 total)
  • You must be logged in to reply to this topic.

Ingressi e uscite su valori diversi da quelli indicati nel codice


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
cito.alma @cito-alma Participant
Summary

This topic contains 25 replies,
has 2 voices, and was last updated by cito.alma
4 years, 11 months ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 03/12/2021
Status: Active
Attachments: 6 files
Logo Logo
Loading...