Info Pro Order – data di validita

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #54534 quote
    traderwin
    Participant
    Average

    Salve, volevo chiedere se all’interno di un codice Ts è possibile inserire una data di validita’, nel senso io vorrei che all’interno del codice ci sia una stringa dove io posso settare ad esempio che questo Ts smettera’ di funzionare in data 31/12/2017. E’ possibile farlo? 

    #54539 quote
    Nicolas
    Keymaster
    Master

    È possibile verificare la DATE all’interno dell’istruzione corretta per avviare o meno un nuovo ordine.

    #54550 quote
    traderwin
    Participant
    Average

    Ciao Nicolas. grazie per la risposta.

    Ho visto il link che mi hai postato, ma non ho ancora capito come si fa.

    In un Ts che voglio mi lavori ad esempio da 01/01/2018 a 01/02/2018 che codice di stringa devo inserire?

     

    #54557 quote
    Nicolas
    Keymaster
    Master

     Una condizione semplice con DATE:

    test = date=20180101 or date=20180102
    
    if test and buycondition then 
     buy 1 contract at market
    endif

     

    #54559 quote
    traderwin
    Participant
    Average

    Ciao Nicolas, ho provato ad inserire questa stringa, ma il ts non funziona nel senso che non mi apre nessuna posizione.

    Ho provato a farlo lavorare dal 01/11/2017 al 30/11/2017

    test = date=20171101 or date=20171130
    IF test and c1 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUY 2 CONTRACT AT MARKET
    ENDIF

    Ho sbagliato qualcosa? grazie

    #54642 quote
    Nicolas
    Keymaster
    Master

    Non ho idea delle tue altre condizioni: timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry
    Si prega di condividere il codice completo!
    Se stai scambiando un intervallo di tempo giornaliero, le condizioni temporali devono essere testate al momento esatto in cui il codice viene letto (solo alla fine della barra).

    #54703 quote
    traderwin
    Participant
    Average
    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    // Impedisce al sistema di creare nuovi ordini per entrare a mercato o aumentare la taglia della posizione prima dell'orario specificato
    noEntryBeforeTime = 080000
    timeEnterBefore = time >= noEntryBeforeTime
    
    // Impedisce al sistema di piazzare nuovi ordini per entrare a mercato o aumentare la taglia della posizione dopo l'orario indicato
    noEntryAfterTime = 220000
    timeEnterAfter = time < noEntryAfterTime
    
    // Impedisce al sistema di tradare in giorni specifici della settimana
    daysForbiddenEntry = OpenDayOfWeek = 1 OR OpenDayOfWeek = 6 OR OpenDayOfWeek = 0
    
    // Condizioni per entrare su posizioni long
    indicator1 = ExponentialAverage[7](close)
    indicator2 = Average[12](close)
    c1 = (indicator1 CROSSES OVER indicator2)
    
    IF c1 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
    
    // Condizioni per uscire da posizioni long
    indicator3 = ExponentialAverage[7](close)
    indicator4 = Average[12](close)
    c2 = (indicator3 CROSSES UNDER indicator4)
    
    IF c2 THEN
    SELL AT MARKET
    ENDIF

    Salve, Nicolas.

    Io vorrei che il Ts sopra lavora dal 01/12/2017 al 31/12/2017.

    Vorrei darla una data definita in cui deve lavorare.

    E’ possibile?

    cosa devo inserire?

    #54704 quote
    Nicolas
    Keymaster
    Master

    Questo codice modificato dovrebbe funzionare come previsto.

    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    // Impedisce al sistema di creare nuovi ordini per entrare a mercato o aumentare la taglia della posizione prima dell'orario specificato
    noEntryBeforeTime = 080000
    timeEnterBefore = time >= noEntryBeforeTime
    
    // Impedisce al sistema di piazzare nuovi ordini per entrare a mercato o aumentare la taglia della posizione dopo l'orario indicato
    noEntryAfterTime = 220000
    timeEnterAfter = time < noEntryAfterTime
    
    // Impedisce al sistema di tradare in giorni specifici della settimana
    daysForbiddenEntry = OpenDayOfWeek = 1 OR OpenDayOfWeek = 6 OR OpenDayOfWeek = 0
    
    //date test
    datetest = date>=20171201 and date<= 20171231
    
    // Condizioni per entrare su posizioni long
    indicator1 = ExponentialAverage[7](close)
    indicator2 = Average[12](close)
    c1 = (indicator1 CROSSES OVER indicator2)
    
    IF c1 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry AND datetest THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
    
    // Condizioni per uscire da posizioni long
    indicator3 = ExponentialAverage[7](close)
    indicator4 = Average[12](close)
    c2 = (indicator3 CROSSES UNDER indicator4)
    
    IF c2 THEN
    SELL AT MARKET
    ENDIF

     

    #54707 quote
    traderwin
    Participant
    Average

    Perfetto, testato adesso e funziona alla grande 🙂

    Grazie tante Nicolas

     

    Quindi a quanto ho visto basta inserire il datetest nel codice di acquisto ed impostare le date nella variabile “datetest”

    #54708 quote
    traderwin
    Participant
    Average

    Nicolas, inoltre nel codice del Ts e possibile inserire lo strumento su cui operare? 

    #54737 quote
    Nicolas
    Keymaster
    Master

    Oh! sembra che tu non sia utilizzato da ProOrder! Basta lanciare la strategia sullo strumento desiderato da soli. Non è possibile selezionarlo direttamente nel codice!

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

Info Pro Order – data di validita


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
traderwin @traderwin Participant
Summary

This topic contains 10 replies,
has 2 voices, and was last updated by Nicolas
8 years, 3 months ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 12/02/2017
Status: Active
Attachments: No files
Logo Logo
Loading...