Um preço limite não transforma um toque no gráfico em uma operação confirmada. Este modelo didático M1 fixa uma faixa, aceita apenas o fechamento de rompimento imediatamente seguinte e coloca uma ordem pendente para o primeiro retorno. A ordem tem validade limitada; o estado da conta depende de relatórios verificados da corretora. Os exemplos distinguem toque apenas no Bid, reteste sem execução, expiração confirmada e execução que ocorre durante o cancelamento.
1. Defina uma hipótese completa para o primeiro reteste
A estratégia estuda o primeiro retorno após uma pequena faixa concluída e seu rompimento imediato. A questão principal é a execução: a ordem pendente foi aceita, executada, expirada ou cancelada? Isso difere de uma entrada a mercado depois de duas pernas de recuo ou de uma reentrada após falso rompimento. O modelo não usa EMA, RSI, SAR, ADX, ATR nem pivô confirmado por candles futuros.
Esta é uma especificação didática reproduzível, não um EA instalável ou um sistema validado em conta real. Quantidade de candles, distâncias e prazos são hipóteses declaradas. Todos os pares de cotações e relatórios da corretora são inventados. Limitar a intenção de espera não garante que a conta fique sem exposição exatamente naquele instante.
2. Fixe o contrato, o relógio UTC e o bloqueio da conta
Use OHLC Bid fechados de EURUSD M1 com pip=0.0001; point=tick=0.00001; contract=EUR100,000/lot; pip_value=$10/lot em conta USD. Aberturas e fechamentos de todos os candles da formação, além da colocação, devem cumprir 09:00<=UTC<12:00. Antes de buscar, confirme a conta inteira sem posições, ordens pendentes, outra exposição ou solicitações não resolvidas. Contrato e margem devem ser conhecidos, com suporte à proteção inicial anexada e à expiração no servidor.
Verifique a conversão entre UTC e o relógio do servidor, incluindo mudanças de defasagem. Os exemplos assumem explicitamente server_UTC_offset=0; known_event_list=[]. Uma lista conhecida de eventos bloqueia a colocação durante [event−15 min,event+15 min]; o intervalo é uma política de pesquisa assumida. Relógio, calendário ou dados desconhecidos impedem nova ordem. Uma pendente existente ou uma resposta não resolvida continua bloqueando a conta.
3. Congele a primeira faixa independente de cinco candles
Após uma liberação verificada, tome os cinco primeiros intervalos M1 consecutivos realmente concluídos cujas aberturas sejam iguais ou posteriores à liberação. Congele H=max(High1..High5); L=min(Low1..Low5); 6<=(H−L)/pip<=10. Consuma o bloco antes de testar a largura. Não deslize um bloco já consumido para melhorar a faixa; intervalos ausentes ou bloco inválido exigem reinício após a observação da falha.
O sexto candle é a única vaga de rompimento B. No exemplo principal, a faixa é 09:00–09:05 UTC; H=1.20080; L=1.20000; width=8 pip. Os extremos já eram conhecidos; não são pivôs escolhidos depois. A mudança do minuto não prova sozinha o fechamento: verifique o intervalo ao receber os dados do próximo candle. Após rejeição, saída verificada, liberação de bloqueio ou recuperação dos dados, apague a faixa antiga e exija aberturas inteiramente novas.
4. Aceite apenas o fechamento de rompimento imediatamente seguinte
Para BUY, exija Close(B)>Open(B); 0.5<=(Close(B)−H)/pip<=4.0. O espelho SELL exige Close(B)<Open(B); 0.5<=(L−Close(B))/pip<=4.0. B é exatamente o próximo intervalo; não espere um fechamento posterior. Igualdade na borda, doji, corpo contrário ou distância excessiva consomem o ciclo sem ordem.
O BUY principal apresenta B=k5; close_time=09:06 UTC; Close=1.20110; distance=3.0 pip. Outro caso fecha em 1.20080=H e falha. O candle seguinte fecha em 1.20110, mas não substitui B. Mais tarde, uma faixa realmente nova pode criar outro ciclo; ela não recupera retroativamente o anterior.
| Horário UTC | Função | Abertura | Máxima | Mínima | Fechamento |
|---|---|---|---|---|---|
| 09:01 UTC | R1 | 1.20020 | 1.20045 | 1.20000 | 1.20035 |
| 09:02 UTC | R2 | 1.20035 | 1.20070 | 1.20025 | 1.20060 |
| 09:03 UTC | R3 | 1.20060 | 1.20080 | 1.20040 | 1.20050 |
| 09:04 UTC | R4 | 1.20050 | 1.20065 | 1.20020 | 1.20030 |
| 09:05 UTC | R5 | 1.20030 | 1.20075 | 1.20025 | 1.20070 |
| 09:06 UTC | B | 1.20070 | 1.20120 | 1.20065 | 1.20110 |
5. Defina preço pendente e proteção fixa
No fechamento B válido, escolha P_buy=H+0.1 pip; P_sell=L−0.1 pip. BUY fixa S_bid=P_buy−3.5 pip; T_bid=P_buy+8.0 pip; SELL fixa S_ask=P_sell+3.5 pip; T_ask=P_sell−8.0 pip. Todos os preços devem respeitar o tick declarado. Os deslocamentos são hipóteses explícitas do modelo, não distâncias otimizadas ou candles Ask históricos reconstruídos.
O BUY principal usa P=1.20081; S_bid=1.20046; T_bid=1.20161; SELL usa P=1.19919; S_ask=1.19954; T_ask=1.19839. Mantenha esses níveis absolutos após colocação e execução. Não há trailing, mudança para o preço de entrada, preço médio, saída parcial, posição oposta ou substituição por ordem a mercado. Se a corretora não suportar ambas as saídas iniciais e a expiração exigida, descarte o evento.
6. Consuma somente o primeiro par de cotações após B
Examine apenas o primeiro par recebido depois do fechamento programado de B, verificando também que B realmente terminou. Exija arrival<=B_close+1.000 s; 0<=quote_age<=250 ms; 0<=spread<=0.6 pip. Os preços devem ser positivos, não cruzados e alinhados ao tick. Exija Ask>P_buy for BUY; Bid<P_sell for SELL: o primeiro retorno pelo lado correto ainda não pode ter passado. Revise janela UTC, conta sem exposição, contexto, distâncias atuais da corretora, volume, margem disponível, relógio e suporte à proteção e expiração.
O par principal é 09:06:00.100 quote; 09:06:00.120 arrival; Bid/Ask=1.20110/1.20116. Se passar por todos os filtros, permita uma única solicitação de colocação com níveis e expiração fixos. O primeiro par ruim, antigo ou fora do prazo consome a permissão; não o substitua por um posterior. Um stop level local igual a zero não garante aceitação. O argumento de slippage do terminal não garante o preço de execução de uma pendente.
7. Preserve o espelho SELL completo e o lado do preço
SELL congela a borda inferior, exige o fechamento baixista imediatamente seguinte abaixo dela e coloca Sell Limit abaixo da borda enquanto Bid permanece abaixo de P. Seu primeiro retorno válido é Bid>=P_sell; BUY usa Ask<=P_buy. Após a confirmação da execução, saídas BUY são verificadas em Bid e saídas SELL em Ask. OHLC Bid sozinho não revela antigos toques Ask ou prioridade de execução.
O exemplo SELL executa em 1.19919. Depois, o par Bid/Ask=1.19948/1.19954 alcança o stop Ask embora Bid ainda esteja abaixo. A saída pior fornecida é Ask=1.19964; net=−$28.56 e ultrapassa o orçamento previsto. O resultado financeiro ilustrado vem do relatório, não de um preço conveniente do gráfico. Gatilhos Ask escolhidos a partir da geometria Bid não são OHLC Ask históricos.
8. Separe a expiração da espera da conta sem exposição confirmada
O prazo da ordem pendente é D_wait=min(B_close+120 s,12:00 UTC). Solicite essa expiração explícita no servidor usando a conversão UTC verificada e confira o valor na aceitação. Retire também a intenção de espera em D_wait por um temporizador conectado e calibrado. Prazo atingido ou pedido de exclusão não provam ausência de execução logo antes. Concilie ticket, posições e histórico antes de liberar o bloqueio.
No ciclo principal, B_close=09:06; D_wait=09:08 UTC. O caso de reteste tardio fornece server_expired=09:08:00.000; verified_flat_observed=09:08:00.060; o primeiro retorno Ask ocorre em 09:08:00.100. Não há substituição permitida. Expiração desconhecida ou não suportada bloqueia a colocação. Uma negativa definitiva da expiração error=147 encerra o ciclo; nunca retire a expiração para reenviar o mesmo evento.
9. Dimensione pelo espaço líquido usando P como preço planejado
O plano usa P, não uma execução deduzida de um toque. Com c=0.3 exit reserve+0.6 linear round-trip commission=0.9 pip, BUY tem L=(P−S_bid)/pip+c; W=(T_bid−P)/pip−c e SELL L=(S_ask−P)/pip+c; W=(P−T_ask)/pip−c. Exija L e W positivos e W/L>=1.50. Os lados corretos de entrada e saída já incorporam o spread; não o some novamente. Não são assumidos financiamento ou outros custos.
Use equity=$10,000; risk_fraction=0.25%; budget=$25; lot_min=lot_step=0.01; lot_max=1.00 e lots=floor_step(25/(L×10),0.01). O plano principal resulta em L=4.4; W=7.1; W/L=1.6136364; lots=0.56; planned_loss=$24.64; planned_net_target=$39.76. Rejeite volume incompatível ou margem indisponível. P é uma hipótese de planejamento, não uma promessa de execução. Diminuir o volume não corrige uma relação líquida linear insuficiente. Gaps e outras condições de execução podem exceder o orçamento planejado.
| Observação | Preço pendente | Stop | Alvo | Perda, pips | Alvo líquido, pips | W/L líquido | Lotes planejados | Perda planejada, USD | Alvo líquido planejado, USD |
|---|---|---|---|---|---|---|---|---|---|
| BUY | 1.20081 | 1.20046 | 1.20161 | 4.4 | 7.1 | 1.6136364 | 0.56 | 24.64 | 39.76 |
| SELL | 1.19919 | 1.19954 | 1.19839 | 4.4 | 7.1 | 1.6136364 | 0.56 | 24.64 | 39.76 |
| Novo setup independente / BUY | 1.20131 | 1.20096 | 1.20211 | 4.4 | 7.1 | 1.6136364 | 0.56 | 24.64 | 39.76 |
10. Diferencie toque Bid, reteste correto e execução
Para BUY, o par 09:06:30.000; Bid/Ask=1.20081/1.20087 toca P apenas em Bid. O retorno real de Ask é 09:06:40.000; Bid/Ask=1.20075/1.20081. São observações distintas do par. No caso principal, a execução informada em P já é conhecida em 09:06:40.010, antes da chegada da cotação de retorno em 09:06:40.020; por isso a posição executada é gerenciada sem pedido de exclusão.
Concilie os relatórios disponíveis antes de agir em cada observação. Se o primeiro toque do lado correto chegar e o último estado verificado ainda for pendente, retire o evento e solicite cancelamento uma vez; não espere um segundo toque. O caso sem execução pede exclusão em 09:06:40.020 e fornece cancelamento confirmado e conta sem exposição em 09:06:40.080. Se o retorno anteceder a resposta de colocação, registre a intenção de retirada e concilie primeiro; cancele uma vez apenas quando o ticket pendente for conhecido. Execução confirmada depois da retirada exige a regra de emergência.
| Horário UTC | Bid / Ask | Preço pendente | Estado |
|---|---|---|---|
| 09:06:30.000 UTC | 1.20081 / 1.20087 | 1.20081 | Toque apenas no Bid |
| 09:06:40.000 UTC | 1.20075 / 1.20081 | 1.20081 | Retorno Ask |
11. Cancele uma ideia pendente invalidada uma única vez
Enquanto a ordem estiver verificada como pendente, retire-a na expiração, indisponibilidade de dados/calendário, bloqueio por notícias, par inválido ou spread>0.8 pip. Retire também se o lado de saída alcançar o alvo antes da execução, ou se um candle M1 efetivamente fechado e observado voltar pela borda: Close<=H for BUY; Close>=L for SELL. Essas políticas não garantem que a solicitação anteceda a próxima execução do servidor.
O caso de invalidação apresenta k6 Close=1.20078<H=1.20080, observado após o início do próximo intervalo. Solicita cancelamento em 09:07:00.120 e fornece conta sem exposição verificada em 09:07:00.180. Um reteste válido posterior em 09:07:20.000 não cria outra ordem. Envie no máximo uma solicitação de cancelamento por ticket conhecido. Negativa, restrição de congelamento, desconexão ou timeout mantêm o bloqueio; concilie o estado sem excluir repetidamente, substituir ou ampliar os níveis.
12. Trate a execução que ocorre durante o cancelamento
No caso de concorrência, uma cotação com spread largo provoca o pedido de exclusão em 09:06:30.020. Em seguida o servidor executa em 09:06:30.030; P=1.20081, observado em 09:06:30.040. A tentativa de exclusão não eliminou a posição. A negativa é observada em 09:06:30.080. Regras de congelamento e tempos de mensagens podem impedir o cancelamento desejado; neste exemplo, apenas o relatório fornecido estabelece o estado.
Uma execução confirmada depois da intenção de retirada mantém sua proteção anexada e permite um encerramento de emergência na primeira cotação confiável do lado correto após a confirmação. Aqui a solicitação é 09:06:30.050, com saída fornecida Bid=1.20074; net=−$7.28. Mantenha o bloqueio até verificar o encerramento; resposta incerta continua não resolvida. Ausência inesperada da proteção inicial exige o mesmo procedimento. Nunca mova os níveis para forçar aceitação nem trate intenção de cancelar como uma operação de resultado zero.
13. Gerencie a posição normalmente executada até o limite fixo
Após aceitação e execução normal do primeiro reteste, preserve a proteção original e use D_position=min(B_close+10 min,12:00 UTC). O ponto de referência é B, não uma execução posterior nem o fim da espera. Se não houve saída protetiva, envie uma solicitação de encerramento na primeira cotação disponível e confiável do lado correto no prazo ou depois. A proteção tem prioridade na mesma cotação e continua ativa enquanto a resposta ao fechamento está pendente.
O caso de saída por tempo usa D_position=09:16 UTC; first_quote=09:16:00.100; arrival=09:16:00.120. Sua saída BUY fornecida é Bid=1.20076; net=−$6.16. Sem cotação no prazo não significa conta livre, e a última cotação antiga não é uma execução inventada na fronteira. Verifique o estado real após encerrar. Timeout de fechamento não autoriza outra posição ou uma segunda solicitação baseada apenas em suposição.
14. Mantenha respostas desconhecidas sem resolução e recomece com candles novos
Diferencie placement_permission=B_close+1 s; pending_expiry=B_close+120 s; ack_timeout=request_time+2 s. Sem resposta de colocação, aceitação e execução são desconhecidas. Sem resposta de cancelamento, o estado pendente ou executado segue não resolvido. Um preço de referência que depois atinja o alvo não prova execução nem lucro. Deixe entrada executada, saída e P&L em branco até obter evidências confiáveis; nunca tente novamente o mesmo evento.
Após rejeição definitiva ou conta sem exposição confirmada, limpe o setup antigo. No reinício independente, o B falho é observado em 09:06:00.120; só novas aberturas a partir de 09:07 formam os próximos cinco candles. Seu próprio B=k12; close=09:13; P=1.20131; S_bid=1.20096; T_bid=1.20211 produz uma solicitação, definitivamente rejeitada com error=130. O B antigo e o candle atraente posterior permanecem rejeitados. Conta com estado incerto não libera a busca apenas porque mais minutos passaram.
15. Reproduza observações e resultados fictícios
Os arquivos contêm 14 independent cases; 24 closed bars/case; 336 Bid bars; 15 declared formation windows; 1,375 paired quotes; 1,419 ledger rows. Cada caso observa um ciclo declarado, exceto o reinício com dois. Cotações posteriores descrevem o contexto daquele ciclo, não uma nova busca exaustiva. O registro separa 12 simulated placements; 4 cancel requests; 2 close requests; 4 supplied fills; 0 live orders. Horário de cotação e recebimento são distintos; uma cotação do próximo candle em formação confirma o último intervalo fechado sem adicionar outro candle fechado.
O fluxo inventado fica constante entre as atualizações listadas. Seus pares reproduzem os OHLC Bid exportados; não recuperam Ask histórico, fila ou prioridade de execução. Os resultados encerrados fornecidos após a comissão declarada são target +$41.44; gap stop −$28.56; time exit −$6.16; cancellation race −$7.28. Casos sem execução e não resolvidos deixam os resultados vazios. Recalcule janelas completas, primeiros toques corretos, transições informadas, volume e valores; esses quatro encerramentos não são estatísticas de desempenho.
Baixar observações fictícias Bid M1 (CSV)
Baixar janelas declaradas e resultados (CSV)
Baixar cotações pareadas, solicitações e relatórios (CSV)
| Estado | Solicitações de colocação | Execução informada | Saída informada | P&L líquido fictício, USD |
|---|---|---|---|---|
| CLOSED_TARGET | 1 | 1.20081 | 1.20161 | +41.44 USD |
| CLOSED_STOP | 1 | 1.19919 | 1.19964 | -28.56 USD |
| CLOSED_TIME | 1 | 1.20081 | 1.20076 | -6.16 USD |
| CLOSED_CANCEL_RACE | 1 | 1.20081 | 1.20074 | -7.28 USD |
| CANCELLED_NO_FILL | 1 | — | — | — |
| PLACEMENT_UNCERTAIN | 1 | — | — | — |
| CANCELLATION_UNCERTAIN | 1 | — | — | — |
16. Teste todo o protocolo em dados cronológicos não utilizados
Fixe faixa, vaga de rompimento, lados do preço, custos, prazos e cancelamento antes da pesquisa. Guarde todas as janelas elegíveis e primeiros pares rejeitados, não apenas as execuções. Pares Bid/Ask confiáveis são necessários para distinguir toque apenas Bid de retorno Ask. Resultados exigem evidências reais de aceitação, rejeição, cancelamento e execução; OHLC sozinho não fornece um modelo de execução de pendentes.
Avalie bloqueios por notícias, mudanças de spread, cotações ausentes, expiração no servidor, congelamentos, respostas tardias e execuções durante a exclusão sob as mesmas hipóteses de conta. Registre mudanças no calendário elegível ao alterar regras. Use períodos cronológicos inéditos e condições realistas da corretora. O objetivo é uma hipótese limitada e testável de primeiro reteste; a mecânica inventada não demonstra vantagem nem adequação ao uso real.
Perguntas frequentes
Um candle Bid tocando P comprova a execução de Buy Limit?
Não. Buy Limit observa Ask no retorno correto; o gráfico normal contém Bid. Mesmo um toque Ask é uma observação, e a execução depende de relatório da corretora.
Posso substituir uma ordem expirada ou perseguir o retorno a mercado?
Não. O modelo permite uma colocação por ciclo. Confirme expiração ou cancelamento e conta inteira sem exposição; depois exija uma faixa completamente nova e seu rompimento imediato.
Devo remover a expiração se o servidor retornar o erro 147?
Não. A expiração no servidor faz parte do modelo. Uma negativa definitiva consome o ciclo; suporte desconhecido ou ausente impede a colocação.
Enviar cancelamento significa que a conta está sem exposição?
Não. A execução pode ocorrer durante a solicitação; congelamentos ou respostas tardias podem impedir a exclusão. Verifique ticket, posições e histórico. Execução confirmada após retirada usa o encerramento de emergência protegido.
O que significa resposta desconhecida de colocação ou cancelamento?
O estado da ordem não foi resolvido. Mantenha o bloqueio e deixe resultados em branco. Timeout ou alvo de referência atingido depois não comprovam rejeição, cancelamento ou lucro e não permitem outra ordem.
Os exemplos comprovam lucratividade do scalping com ordens limitadas?
Não. São observações pareadas inventadas e relatórios fornecidos para auditar a mecânica. Quatro resultados encerrados não estabelecem taxa de acerto, expectativa ou vantagem robusta.
Fontes e notas de pesquisa
As referências oficiais descrevem os lados do preço, a expiração, a exclusão de pendentes e as restrições da corretora. Faixa, limites, prazos e relatórios fictícios são hipóteses didáticas. Não comprovam parâmetros ótimos, execução histórica ou lucratividade. A especificação não chama uma API de negociação.
- MetaTrader4: order types and Bid/Ask triggers
- MQL4: OrderSend and pending expiry restrictions
- MQL4: OrderDelete
- MQL4: broker contract, stop and freeze properties
Especificação didática de ordens limitadas. Cotações pareadas e relatórios fictícios; nenhuma ordem real, backtest histórico ou lucratividade medida.