Un cambio SAR diventa candidato soltanto dopo una nuova preparazione nello stato opposto. L’RSI deve già sostenere la direzione alla chiusura del segnale; può confermare solo la candela M5 immediatamente successiva. Il modello didattico valuta poi una quotazione e consente una richiesta d’ingresso con uscite fisse. Prezzi inventati e rapporti di esecuzione assegnati rendono verificabile la meccanica, non la redditività.
1. Definire un’ipotesi di inversione M5 circoscritta
Il modello verifica un nuovo cambio di stato SAR con slancio RSI già presente e una successiva conferma di prezzo. Integra la guida SAR/RSI e il precedente schema SAR/ADX con preparazione M5 propria, ingresso limitato e uscite strutturali fisse. La concordanza degli indicatori non è prova probabilistica indipendente.
Questa è una specifica didattica di ricerca, non un sistema reale validato né un EA installabile. I parametri sono ipotesi, non ottimi dimostrati. Quotazioni e rapporti sono inventati, senza risultati storici Strategy Tester. Prima di giudicare la performance, applicare tutte le regole a dati affidabili mai usati nella progettazione.
2. Fissare contratto, finestra UTC e controllo del conto
Usare OHLC Bid EURUSD M5 chiusi e il contratto illustrativo pip=0.0001; point=tick=0.00001; contract=EUR100,000/lot; pip_value=$10/lot per un conto USD. S, C e richiesta devono rientrare in 09:00<=UTC<12:00. Verificare sull’intero conto assenza di posizioni, ordini pendenti, altre esposizioni e richieste d’ingresso o chiusura irrisolte. Il broker deve supportare contratto e protezione allegata iniziale.
Ricontrollare il contesto in S, C e prima quotazione. Un elenco UTC noto e dichiarato prima del test blocca l’ingresso in [event−15 min,event+15 min]: ipotesi del modello, non distanza sempre sicura. Calendario, contratto o prezzi mancanti bloccano. Dopo interruzione dati, fine blocco, uscita verificata o rifiuto riconciliato, cancellare l’ingresso in attesa e richiedere nuove candele di preparazione aperte dal limite di ripristino in poi. Registrare e consumare i cambi grezzi anche durante i blocchi. Gli esempi assumono esplicitamente un calendario noto e vuoto.
3. Dichiarare il riferimento SAR e RSI su barre chiuse
Usare SAR step=0.02; max=0.20; RSI14=Close. In k1 il seme ribassista è S=max(H0,H1); EP=min(L0,L1); AF=0.02; quello rialzista scambia gli estremi. k0 non ha SAR e il seme non è un cambio. SELL parte rialzista, gli altri ribassisti. Proiettare T=S_prev+AF_prev×(EP_prev−S_prev) e limitare ai due minimi precedenti in stato rialzista o massimi in ribassista. Il contatto include l’uguaglianza: in rialzo Low<=T passa al ribasso con S=max(EP precedente,High attuale); in ribasso High>=T passa al rialzo con S=min(EP precedente,Low attuale). EP diventa l’estremo attuale del nuovo lato e AF torna al passo. Altrimenti solo un nuovo estremo stretto incrementa AF fino al massimo. Una transizione per candela.
Per RSI usare G=max(ΔClose,0); D=max(−ΔClose,0), inizializzare U14=mean(G1,…,G14); V14=mean(D1,…,D14), poi U(k)=[13U(k−1)+G(k)]/14; V(k)=[13V(k−1)+D(k)]/14; RSI=100U/(U+V). Convenzione V=0,U>0→100; U=0,V>0→0; U=V=0→50; prima del seme i valori non sono disponibili. Mantenere tutta la precisione e leggere i due indicatori sul medesimo intervallo effettivamente chiuso dopo la creazione della candela successiva. Alle 09:02 UTC, 08:55–09:00 è chiuso e 09:00–09:05 in formazione. Validare gli export prima di sostituire buffer nativi: nomi e impostazioni uguali non provano calcoli uguali.
4. Preparare BUY con tre nuove barre ribassiste
Subito prima del cambio rialzista S richiedere S−3,S−2,S−1: SAR_state=down AND RSI<=45. Tutte le barre seguono il precedente cambio grezzo e qualsiasi successivo limite di conto verificato senza esposizione o ripristino dati/fine blocco. La preparazione vale soltanto finché soddisfano le tre barre immediatamente precedenti. Il primo cambio opposto la consuma prima dei filtri; non aspetta RSI migliori.
BUY S richiede un nuovo passaggio ribassista-rialzista e RSI(S)>=52; Close(S)>Open(S); 3<=r/pip<=12, con r definito dallo stop fisso sotto. Nell’esempio principale S=k64 / 09:00 UTC; Close=1.30228; RSI=60.606061; le chiusure di preparazione sono 08:45 / 08:50 / 08:55. Un requisito fallito scarta S definitivamente. L’uguaglianza alle soglie è consentita, ma uno stato SAR che prosegue non diventa un cambio nuovo.
| Ora UTC | Ruolo | Stato | RSI14 | Chiusura |
|---|---|---|---|---|
| 08:45 UTC | Tre nuove barre | SAR ↓ | 0.000000 | 1.30156 |
| 08:50 UTC | Tre nuove barre | SAR ↓ | 0.000000 | 1.30152 |
| 08:55 UTC | Tre nuove barre | SAR ↓ | 0.000000 | 1.30148 |
| 09:00 UTC | S | SAR ↑ | 60.606061 | 1.30228 |
| 09:05 UTC | C | SAR ↑ | 63.577586 | 1.30238 |
5. Definire integralmente la regola SELL
Per SELL, le nuove barre immediatamente precedenti devono avere S−3,S−2,S−1: SAR_state=up AND RSI>=55. Consumare il primo passaggio rialzista-ribassista e richiedere RSI(S)<=48; Close(S)<Open(S); 3<=r/pip<=12. Vale solo la C successiva: stato e corpo ribassisti, chiusura sotto il minimo Bid di S con 0<Low(S)−Close(C)<=2 pip.
La prima quotazione deve conservare Ask sotto quel minimo. SELL entra su Bid ed esce su Ask. Stop e obiettivo sono prezzi Ask di attivazione scelti dalla geometria Bid, non OHLC Ask ricostruiti né prova di uno stop sopra il massimo Ask storico. Il caso speculare ha S Close=1.29772; RSI=39.393939; C Close=1.29762. Vietati inversione automatica, mediazione e posizioni aggiuntive.
6. Confermare solo alla prossima chiusura M5
Per BUY può confermare soltanto C=S+1: SAR resta rialzista, Close(C)>Open(C) e 0<Close(C)−High(S)<=2 pip. La C principale è k65 / 09:05; Close=1.30238; High(S)=1.30233; break=0.5 pip. Occorre una chiusura oltre tutto il range S, non un contatto della sola ombra. SELL applica le condizioni speculari già esplicitate.
Intervallo previsto mancante, SAR invertito, corpo errato, uguaglianza al confine o estensione eccessiva annullano il candidato. Nessuna barra successiva sostituisce C. L’orario non basta: il primo prezzo della nuova barra deve dimostrare dati C validi e chiusi. Se non è possibile, scartare l’evento e ricostruire la preparazione, senza attendere una coppia più comoda.
7. Fissare protezione e obiettivo in S
Per BUY impostare S_bid=Low(S)−0.5 pip; r=Close(S)−S_bid; T_raw=Close(S)+2.5r; per SELL S_ask=High(S)+0.5 pip; r=S_ask−Close(S); T_raw=Close(S)−2.5r. Arrotondare l’obiettivo verso la chiusura S al tick valido: in basso BUY, in alto SELL. Congelare i due prezzi assoluti prima di C e della quotazione d’ingresso. La r strutturale non coincide con il rischio fra esecuzione effettiva e stop.
Il BUY principale ha S_bid=1.30138; r=9 pip; T_bid=1.30453; SELL S_ask=1.29862; r=9 pip; T_ask=1.29547. Il successivo S73 indipendente mostra l’arrotondamento: Close=1.30194; r=9.1 pip; T_raw=1.304215→T_bid=1.30421. Un ingresso tardivo non sposta obiettivo né allarga stop. Dopo l’esecuzione le uscite restano fisse; il limite temporale è separato.
| Segnale S | Chiusura | Stop | Obiettivo | r strutturale, pip |
|---|---|---|---|---|
| BUY / S64 | 1.30228 | 1.30138 | 1.30453 | 9.0 pip |
| SELL / S64 | 1.29772 | 1.29862 | 1.29547 | 9.0 pip |
| BUY / S73 | 1.30194 | 1.30103 | 1.30421 | 9.1 pip |
8. Separare il cambio scartato da una nuova preparazione
Nel caso debole, S64 / 09:00; RSI=3.703704 non supera il filtro RSI BUY. In k66 / 09:10; RSI=59.341168 continua lo stesso stato rialzista: nessuna nuova autorizzazione per C o quotazione. Il cambio grezzo ribassista k69 non è preparato per SELL e consuma anch’esso il proprio evento.
Tre nuove barre ribassiste k70–k72 / 09:30–09:40 precedono poi il distinto cambio rialzista S73 / 09:45; RSI=53.369288. La sua C74 conferma alle 09:50. Questo candidato genera una richiesta che il rapporto assegnato rifiuta definitivamente. È una preparazione indipendente, non un tentativo ripetuto di S64. Un rifiuto non è un’operazione eseguita.
9. Valutare solo la prima quotazione dopo C
Consumare la prima coppia ricevuta dopo la chiusura prevista C con arrival<=C_close+2.000 s; 0<=quote_age<=500 ms; 0<=spread<=0.8 pip. BUY conserva Bid>High(S), SELL Ask<Low(S). Controllare tick, distanze e volumi correnti del broker, contesto noto e supporto di entrambe le uscite iniziali. Regole ignote impediscono la richiesta. Un livello minimo stop dichiarato zero non garantisce accettazione senza vincoli.
Usare F_plan=Ask+0.2 pip for BUY; F_plan=Bid−0.2 pip for SELL. Costo residuo c=0.3 exit reserve+0.6 linear round-trip commission=0.9 pip; la riserva d’ingresso è già in F_plan. BUY usa L=(F_plan−S_bid)/pip+c; W=(T_bid−F_plan)/pip−c, SELL L=(S_ask−F_plan)/pip+c; W=(F_plan−T_ask)/pip−c. Richiedere L>0; W>0; W/L>=1.50. Lo spread è incluso tramite i lati corretti e non si somma di nuovo. Non si assumono altre spese o finanziamento.
| Osservazione | Quotazione | Perdita, pip | Obiettivo netto, pip | W/L netto | Lotti previsti |
|---|---|---|---|---|---|
| BUY | 1.30238 / 1.30244 | 11.7 | 19.8 | 1.6923077 | 0.21 |
| SELL | 1.29756 / 1.29762 | 11.7 | 19.8 | 1.6923077 | 0.21 |
| BUY | 1.30256 / 1.30262 | 13.5 | 18.0 | 1.3333333 | — |
| BUY / Diagnosi successiva | 1.30237 / 1.30243 | 11.6 | 19.9 | 1.7155172 | — |
| BUY | 1.30213 / 1.30219 | 12.7 | 19.1 | 1.5039370 | 0.19 |
10. Annullare una conferma fallita senza sostituzioni
Nel caso C fallita, S è valido ma la prima conferma dà C65 Close=1.30230<=S64 High=1.30233. Viene scartata a quella chiusura. La barra seguente raggiunge k66 Close=1.30240, fuori dall’unica posizione consentita per C. Nessuna richiesta e nessuna conferma sostitutiva.
Continuare il rilevamento dei cambi grezzi. Un futuro candidato richiede la preparazione completa nuova nello stato opposto e un altro primo cambio. Se C invertita crea anch’essa un cambio, registrarlo separatamente applicando le stesse regole. Il fallimento non autorizza inversioni di posizione. Blocco ingressi e controllo esposizione restano indipendenti.
11. Non recuperare la prima quotazione errata o scaduta
La prima coppia del BUY accettato è Bid/Ask=1.30238/1.30244; F_plan=1.30246 e produce L=11.7; W=19.8; W/L=1.6923077. Un altro caso riceve prima 1.30256/1.30262; F_plan=1.30264. Con identiche uscite ottiene L=13.5; W=18.0; W/L=1.3333333 e fallisce nonostante lo spread di 0.6 pip.
La coppia successiva 1.30237/1.30243 darebbe L=11.6; W=19.9; W/L=1.7155172, ma l’evento è consumato: nessun volume ammissibile né richiesta. Nel caso scaduto il primo prezzo arriva alle 09:05:02.120, oltre la scadenza inclusiva 09:05:02.000. Anche qui nessuna richiesta. Migliori prezzi successivi non riattivano i due eventi.
12. Dimensionare la richiesta e verificare SELL su Ask
Il conto illustrativo usa equity=$10,000; risk_fraction=0.25%; budget=$25; lot_min=lot_step=0.01; lot_max=1.00. Applicare lots=floor_step(25/(L×10),0.01) e rifiutare vincoli di volume incompatibili. I piani principali accettati usano 0.21 lot; planned_loss=$24.57; planned_net_target=$41.58. Il volume diagnostico 0.18 lot del primo prezzo fallito non è autorizzato; ridurlo non migliora il rapporto netto lineare. Nessuna perdita pianificata è un massimo garantito.
La prima coppia SELL è Bid/Ask=1.29756/1.29762; F_plan=1.29754 con le stesse L e W principali. L’esecuzione d’ingresso assegnata è 1.29755. Poi la coppia fittizia Bid/Ask=1.29856/1.29862 raggiunge lo stop Ask mentre Bid resta inferiore. Il rapporto d’uscita indica Ask fill=1.29864. Non dedurre esecuzioni Ask da candele Bid né disegnare percorsi Ask non osservati.
13. Conservare uscite fisse con scadenza fissa
Stop e obiettivo accettati restano invariati. Niente trailing SAR, pareggio, uscite parziali o inversione automatica su cambio opposto. Scadenza D=min(C_close+30 min,12:00 UTC). Se la protezione non ha chiuso, richiedere una sola chiusura alla prima quotazione affidabile disponibile dal lato corretto da D in poi. La protezione accettata resta attiva nell’attesa.
Elaborare cronologicamente le coppie: BUY attiva stop/obiettivo su Bid, SELL su Ask. Per ogni prezzo verificare la protezione prima dell’uscita temporale. Un salto può superare il livello, quindi l’esecuzione comunicata può differire. Nessun prezzo alla scadenza non prova assenza di posizione. Con dati mancanti o risposta incerta mantenere il blocco e riconciliare; non inventare esecuzioni al confine né risultati zero.
14. Riconciliare rifiuto, ingresso incerto e protezione
Una richiesta d’ingresso per evento, con riserva 0.2 pip=2 points in questo contratto. L’argomento slippage del terminale non è garanzia universale di prezzo. Rifiuto definitivo e assenza di esposizione verificata consumano l’evento e richiedono nuova preparazione. In S73 il server ipotizzato rifiuta gli stop malgrado il livello minimo dichiarato zero. Nessun nuovo tentativo né esecuzione.
Distinguere entry_deadline=C_close+2 s da ack_timeout=request_time+2 s. Un timeout non annulla una richiesta forse accettata. Nel caso senza risposta rimane una richiesta irrisolta: esecuzione e P&L vuoti anche se il prezzo raggiunge poi l’obiettivo. Riconciliare posizioni e storico prima di nuove richieste. Protezione iniziale non supportata blocca l’ingresso; un’esecuzione inaspettatamente scoperta permette una chiusura d’emergenza su prezzo affidabile, seguita da riconciliazione se incerta. Non allargare uscite per ottenere accettazione.
15. Riprodurre osservazioni e rapporti assegnati
I file contengono 768 closed Bid bars; 11 raw flips; 3,080 quote updates; 5 simulated entry requests; 3 supplied fills; 0 live orders. Ogni caso indipendente ha 96 bars. Il percorso dichiaratamente ipotizzato, costante a tratti, visita Open, Low/High, High/Low e Close agli scarti temporali indicati. Ask è Bid più lo spread assunto. Questa costruzione non recupera ordine intrabar storico o Ask dagli OHLC.
Ricalcolare indipendentemente indicatori, preparazioni, consumo eventi, C, costi, lotti e lati d’uscita. Risultati netti assegnati BUY target +$42.42; SELL stop −$24.15; time exit −$2.94 dopo commissione ed esecuzioni dichiarate. Sono calcoli monetari costruiti, non performance misurate; nessuna percentuale vincente o aspettativa dedotta. Righe rifiutate e irrisolte non hanno volume eseguito né P&L. Il prezzo della prossima barra in formazione conferma l’ultimo intervallo chiuso senza inventare un’altra barra chiusa.
Scarica input M5 fittizi (CSV)
Scarica cambi grezzi e candidati (CSV)
Scarica quotazioni e rapporti fittizi (CSV)
| Stato | Richieste ingresso | Esecuzione comunicata | Uscita comunicata | P&L netto fittizio, USD |
|---|---|---|---|---|
| CLOSED_TARGET | 1 | 1.30245 | 1.30453 | +42.42 USD |
| CLOSED_STOP | 1 | 1.29755 | 1.29864 | -24.15 USD |
| CLOSED_TIME | 1 | 1.30245 | 1.30237 | -2.94 USD |
| SERVER_REJECTED | 1 | — | — | — |
| REQUEST_UNCERTAIN | 1 | — | — | — |
16. Studiare tutti i cambi su un calendario comune
Fissare riferimento, preparazione, filtri, tempi, uscite, costi ed eventi prima di dati nuovi. Conservare ogni cambio: non preparato, debole, bloccato, C fallita, prezzo invalido, scaduto o irrisolto. Confrontare varianti RSI sullo stesso calendario grezzo SAR. Cambiare SAR può cambiare il calendario e va dichiarato separatamente.
Usare coppie affidabili e prove d’esecuzione, lasciando ignoti i risultati ignoti. Confrontare regimi, blocchi notizie, copertura, ritardi, rifiuti e netto sotto identici vincoli. Stressare gap, tariffe, limiti e dati mancanti. Tre esiti chiusi assegnati non dimostrano vantaggio. La specifica rende verificabile un’ipotesi circoscritta, senza provare l’idoneità all’uso reale.
Domande frequenti
Un RSI favorevole successivo riattiva il primo cambio debole?
No. Il primo cambio consuma la preparazione prima del filtro RSI. Un valore migliore nello stesso stato non crea evento. Servono tre nuove barre opposte valide e un altro primo cambio.
Una barra M5 successiva può sostituire la conferma fallita?
No. C è soltanto la barra chiusa immediatamente seguente. Non la sostituisce una rottura più pulita dopo. Dati chiusi mancanti o invalidi annullano l’evento e richiedono nuova preparazione.
Si può aspettare un prezzo migliore dopo il primo fallimento?
No. La prima coppia consuma il permesso anche se fallisce per età, spread, livello, margine netto o tempo. Un rapporto successivo migliore resta diagnostico, senza volume autorizzato o nuova richiesta.
Il punto SAR è lo stop protettivo di questa strategia?
No. I livelli fissi derivano dal range S e dal buffer dichiarato; l’obiettivo è arrotondato verso l’ancora. I punti SAR successivi non li cambiano. Anche l’uscita temporale richiede un rapporto di chiusura effettivo.
Il timeout significa che l’ordine d’ingresso è stato rifiutato?
No. Una richiesta inviata può restare irrisolta dopo la scadenza del permesso. Bloccare nuove entrate e riconciliare posizioni e storico, senza presumere esecuzione, rifiuto o P&L zero da una risposta assente.
Gli esempi dimostrano uno scalping redditizio?
No. Prezzi e rapporti sono inventati, senza ordini reali. Gli importi controllano solo lati di prezzo e costi. Non sono backtest storici, aspettativa misurata o prova di impostazioni ottimali.
Fonti e note di ricerca
La documentazione MQL4 ufficiale descrive parametri, prezzi Bid/Ask e protezione ordini. Il calcolo finito è un riferimento dichiarato, coerente con la guida, senza equivalenza nativa presunta. Soglie, tempi, traiettorie, commissioni e rapporti sono ipotesi didattiche. Non viene chiamata alcuna API di trading.
- MQL4: iSAR parameters and buffer shift
- MQL4: iRSI period, price input and buffer shift
- MQL4: OrderSend prices, protection and server restrictions
- MQL4: OrderModify and accepted order changes
Specifica didattica, prezzi e rapporti inventati. Nessun ordine reale, backtest storico o redditività misurata.