Ora e giorno della settimana
1 risposte
jdowney
12 anni fa #111930
Ciao a tutti.
Qualcuno può aiutarmi con questa condizione che sto cercando di fare.
Vorrei fare quanto segue
Se il giorno è il martedì e l'orario è compreso tra le 14:00 e le 15:00, chiudete tutte le operazioni e non effettuate alcuna operazione durante questo orario il martedì tra le 14:00 e le 15:00.
Finora ho ottenuto quanto segue e non riesco a far funzionare la condizione, ma continua a piazzare scambi Hhmm.
}
//————————————–
// Regola 3
se ((TimeDayOfWeek(Time[0])) == 2)
&& ((TimeHour(Time[0]) >= 14)
&& (TimeHour(Time[0]) <= 15))))
{
// Azione #1
sqCloseAllOrders();
// Azione #2
// non fare nulla
}
ritorno(0);
}
//+——————————————————————+
FINE SE;
//——————————————————————–
// Regola 3
SE (((DayOfWeek[0] = _CONSTANT_)
E ((Ora[0] >= 14)
E (Ora[0] <= 15))))
ALLORA
// Azione #1
Chiudere tutti gli ordini;
// Azione #2
Non fare nulla
FINE SE;
0
Mark Fric
12 anni fa #123568
puoi postare qui il tuo file .sqw? Sarà più facile controllarlo.
Marchio
Architetto StrategyQuant
0
jdowney
12 anni fa #123577
puoi postare qui il tuo file .sqw? Sarà più facile controllarlo.
Grazie Mark,
In allegato il file .SQW e il grafico da MT4. Si prega di notare che sto utilizzando il simbolo e il timeframe attuali nel file .sqw ma utilizzo il grafico a 15m sul simbolo GBPCAD.
0
jdowney
12 anni fa #123578
Ciao Mark
Si allega una schermata.
Saluti John.
0
jimasks
12 anni fa #123588
Scusate se mi intrometto in questa discussione, ma credo che questa soluzione faccia al caso vostro.
1. Ho inserito il test di chiusura nella prima scheda. In questo modo le operazioni aperte vengono chiuse all'ora desiderata.
2. Ho aggiunto del codice per consentire il trading sulle altre due schede che escluderanno l'ora/data desiderata.
Non l'ho testato, ma bisogna fare attenzione al martedì alle ore 14. Penso di averlo costruito in modo che non ci sia conflitto tra un possibile orario di apertura e di chiusura.
Ad esempio: la scheda Chiudi tutto funzionerà solo a partire da martedì alle 1400 e uscirà poco prima di martedì alle 1500. Quindi l'EA può aprire operazioni in qualsiasi momento fino a martedì 1400 e iniziare a consentire l'apertura di operazioni da martedì 1500.
Controllate il mio lavoro e verificate se funziona nel modo che desiderate.
Spero che questo sia d'aiuto.
Jim
PS. Penso che questo possa essere generalizzato facilmente dai parametri di ingresso, se si vuole.
0
jdowney
12 anni fa #123596
Ciao Jim
Grazie, funziona esattamente come volevo.
Presumo di aver ancora bisogno della prima scheda per chiudere eventuali ordini aperti, giusto? Ancora una volta grazie, molto apprezzato.
Saluti John.
// CloseAllonTimeDate
SE (((DayOfWeek[0] = _CONSTANT_)
E ((Ora[0] >= 14)
E (Ora[0] < 15))))
ALLORA
// Azione #1
Chiudere tutti gli ordini;
// Azione #2
Non fare nulla
FINE SE;
0
jimasks
12 anni fa #123604
Non è un problema jdoweny,
e sì, sarà comunque necessario utilizzare la prima scheda per chiudere le operazioni durante quel periodo di tempo. Dovreste verificare se chiude tutte le operazioni o se chiude tutte le operazioni con un determinato simbolo. Non ho controllato, ma credo che gli ordini di chiusura operino solo sulle operazioni aperte con il simbolo del grafico... ma non ne sono sicuro.
0
Stai visualizzando 6 risposte - da 1 a 6 (di 6 totali)