INTERRUZIONE SISTEMA

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #137015 quote
    mat024mat024
    Participant
    Junior

    Ciao, mi si è interrotto un sistema sul DAX per la seconda volta, lo utilizzo gia da vari giorni, e tra ieri e oggi mi ha rifiutato per la prima volta due ordini, l’ordine rifiutato mi da il messaggio “Il livello di ordine inserito è troppo vicino al livello corrente del mercato, il livello minimo per questo mercato è 10 punti” . Allego il sistema, come posso risolvere il problema in modo che non mi si ripresenti?

    
    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False
    //ORARIO DI ATTIVAZIONE E DISATTIVAZIONE STRATEGIA
    
    //DEFPARAM FlatBefore = 000000
    //DEFPARAM flatafter = 220000
    
    //Condizione per chiudere tutte le posizioni ilvenerdi sera alle 20:50 e ripartire appena riaprono i mercati il lunedi
    //Operativita = (OpenDayOfWeek > 1 AND OpenDayOfWeek < 5) OR (OpenDayOfWeek = 5 AND time < (210000))
    //IF OpenDayOfWeek = 5 THEN              //1=lunedi....5=Venerdi
    //IF time = (210000) AND OnMarket THEN
    //SELL AT MARKET                   //chiudi i LONG
    //EXITSHORT AT MARKET              //chiudi gli SHORT
    //ENDIF
    //ENDIF
    //
    
    // Variabili ONCE x ordini acquisto, vendita non a mercato
    ONCE NbBarLimitBuy = 1
    ONCE NbBarStopSell = 1
    
    
    
    
    
    // INDICATORI UTILIZZATI
    indicator1 = exponentialAverage[22](close)                            //expo 22 16
    indicator2 = average [20] //CALL adattiva[4, 2, 14]
    
    
    
    
    
    //Variabile per entrare long
    c1 = (indicator1 < indicator2)
    c7 = AverageTrueRange[20](close) < AverageTrueRange[6][8]
    cd = adx[6]>adx[20]
    
    //Variabile per uscire da posizioni long
    c2 = (indicator1 CROSSES OVER indicator2)
    
    // Variabile per entrare su posizioni short
    c3 = (indicator1 > indicator2)
    c8 = AverageTrueRange[16](close) < AverageTrueRange[11](close)[7]
    cd1 = adx[5]>adx[18]
    dd = di[22]<(9)
    // Variabile per uscire da posizioni short
    c4 = (indicator1 CROSSES UNDER indicator2)
    
    
    
    //Condizione per entrare short
    IF  NOT OnMarket  and c1 and low>low[1] and c7  and cd  THEN
    MyLimitBuy = close
    MyIndex = Barindex
    ENDIF
    
    IF Barindex >= MyIndex + NbBarLimitBuy THEN
    MyLimitBuy = 0
    ENDIF
    
    IF MyLimitBuy > 0  THEN
    sellshort 1 SHARES AT myLimitBuy Stop
    set stop ploss (193)
    //set target pprofit (m)
    ENDIF
    
    
    //Condizione per uscire da posizione short
    IF c2 THEN
    Mysell = close
    exitshort AT Mysell limit
    ENDIF
    
    
    //Condizione x entrare long
    IF NOT OnMarket  and c3 and close>close[1] and close > high[1] and close > high[2]  and c8 and cd1 and dd THEN
    MyStopSell = close
    MyIndexS = Barindex
    ENDIF
    IF Barindex >= MyIndexS + NbBarStopSell THEN
    MyStopSell = 0
    ENDIF
    
    IF MyStopSell > 0  THEN
    buy 1 SHARE AT MyStopSell limit
    set stop ploss (274)
    //set target pprofit (m)
    ENDIF
    
    
    //Condizione x uscire da posizioni long
    IF c4  THEN
    Myexit = close
    sell AT Myexit stop
    ENDIF
    
    #137016 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Occorre verificare, quando un ordine pendente viene piazzato, che il prezzo corrente sia almeno alla distanza minina richiesta dal broker per lo strumento tradato.

    #137047 quote
    mat024mat024
    Participant
    Junior

    ok,  ad esempio se la distanza minima è 10 punti, basta cambiare gli ordini di stop in ordini limit oppure devo inserire un comando che gli dica di acquistare o vendere ad un minimo di tot punti per far si che non si interrompa il sistema? se cosi fosse come inserisco il comando nel codice?

    Grazie Mille per la risposta.

    #137053 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    La riga 63 dovrebbe essere un po’ più complessa:

    If close > myLimitBuy then
       If abs(close - myLimitBuy) < 10 then
          sellshort 1 SHARES AT Market
       Else
          sellshort 1 SHARES AT myLimitBuy Stop
       Endif
    Elsif close < myLimitBuy then
       If abs(close - myLimitBuy) < 10 then
          sellshort 1 SHARES AT Market
       Else
          sellshort 1 SHARES AT myLimitBuy Limit
    Else
       sellshort 1 SHARES AT Market
    Endif

    Non l’ho provato, l’ho scritto dal cellulare.

    #137060 quote
    mat024mat024
    Participant
    Junior

    WOW perfetto grazie mille ! guardo di modificarla e provo! grazie ancora per la tempestività!

    #137062 quote
    mat024mat024
    Participant
    Junior

    Scusa, ma se metto gli ordini a mercato e poi chiudo la piattaforma il sistema continua a lavorare o viene interrotto?

    #137063 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    L’AutoTrading continua anche a piattaforma chiusa, che sia giorno lavorativo o festivo.

    Se è festivo ovviamente non aprirà posizioni, ma quelle aperte resteranno aperte fono alla riapertura dei mercati.

    #137068 quote
    mat024mat024
    Participant
    Junior

    si si, mi ricordavo che qualche mese fa con un sistema dove avevo messo gli ordini “at market” invece che ordini limit e stop prima della chiusura della piattaforma mi aveva dato il messaggio che quel sistema con gli ordini a mercato sarebbe stato interrotto, cambiai cosi il  tipo di ordine e non mi si presento piu il problema. (ma a quanto pare avevo sbagliato qualcosa io o interpretato male il messaggio di errore). Per ora grazie appena provo il tuo codice ti faccio sapere.

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.
ProRealAI ProRealAI New

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

INTERRUZIONE SISTEMA


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
mat024 @mat024 Participant
Summary

This topic contains 7 replies,
has 2 voices, and was last updated by mat024mat024
6 years, 3 months ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 06/24/2020
Status: Active
Attachments: No files
ProRealCode ProRealCode
Loading...