Artigos sobre análise de dados e estatísticas na MQL5

icon

Muitos traders apreciam artigos sobre modelos matemáticos e teoria das probabilidades. Afinal de contas, a matemática é a base dos indicadores técnicos, e o conhecimento em estatística é necessário para analisar os resultados das operações e desenvolver estratégias.

Leia sobre lógica fuzzy, filtros digitais, perfil do mercado, mapas de Kohonen, redes neurais e muitas outras ferramentas que podem ser usadas para negociação.

Novo artigo
recentes | melhores
preview
Ciência de Dados e ML (Parte 42): Previsão de Séries Temporais no Mercado Forex com ARIMA em Python

Ciência de Dados e ML (Parte 42): Previsão de Séries Temporais no Mercado Forex com ARIMA em Python

ARIMA, sigla para Modelo Autorregressivo Integrado de Médias Móveis, é um poderoso modelo estatístico tradicional de previsão de séries temporais. Com a capacidade de identificar picos e flutuações nos dados de uma série temporal, esse modelo pode prever com precisão os próximos valores. Neste artigo, vamos entender o que é o ARIMA, como funciona, como utilizá-lo para prever os próximos preços do mercado com alta precisão e muito mais.
preview
Desenvolvimento de ferramentas para análise de Price Action (Parte 29): EA "Boom and Crash Interceptor"

Desenvolvimento de ferramentas para análise de Price Action (Parte 29): EA "Boom and Crash Interceptor"

Descubra como o EA Boom & Crash Interceptor transforma seus gráficos em um sistema proativo de alertas, capaz de identificar movimentos explosivos dos preços por meio da análise de velocidade, da detecção de picos de volatilidade, da confirmação de tendência e de filtros de zonas de pivô. Com setas verdes para "Boom" e vermelhas para "Crash", o EA facilita a tomada de decisões ao filtrar o ruído do mercado e ajudar a aproveitar melhor os movimentos bruscos dos preços. Vamos entender como ele funciona e por que essa ferramenta pode se tornar um diferencial importante nas suas operações.
preview
Aprendizado de Máquina e Data Science (Parte 43): Identificação de padrões ocultos em indicadores com modelos de misturas gaussianas latentes (LGMM)

Aprendizado de Máquina e Data Science (Parte 43): Identificação de padrões ocultos em indicadores com modelos de misturas gaussianas latentes (LGMM)

Você já teve a sensação de que existe algo mais por trás de um gráfico, algum padrão que ainda não conseguiu identificar? Como se houvesse um código secreto que, uma vez decifrado, permitiria saber exatamente para onde os preços estão indo? Apresento o LGMM, uma ferramenta capaz de detectar padrões ocultos no mercado. Esse modelo de aprendizado de máquina ajuda a identificar regularidades que normalmente passam despercebidas.
preview
Desenvolvimento de um Kit de Ferramentas para Análise da Ação do Preço (Parte 25): Rompimento de Fractais com EMA Dupla

Desenvolvimento de um Kit de Ferramentas para Análise da Ação do Preço (Parte 25): Rompimento de Fractais com EMA Dupla

A análise da ação do preço é uma abordagem fundamental para identificar oportunidades de negociação lucrativas. No entanto, monitorar manualmente os movimentos e padrões de preços pode ser uma tarefa desafiadora e demorada. Para resolver esse problema, estamos desenvolvendo ferramentas que analisam automaticamente a ação do preço, fornecendo sinais oportunos sempre que possíveis oportunidades são identificadas. Este artigo apresenta uma ferramenta robusta que combina rompimentos de fractais com as EMAs de 14 e 200 períodos para gerar sinais de negociação confiáveis, ajudando os traders a tomar decisões fundamentadas com maior confiança.
preview
MetaTrader 5 Global Optimizer: Clusterização

MetaTrader 5 Global Optimizer: Clusterização

Nesta terceira parte, o Global Optimizer deixa de escolher apenas o melhor passe do ISS e passa a identificar regiões paramétricas estáveis. Os resultados são analisados por clusterização, medóides e vizinhança, com suporte de execuções genéticas e possível refinamento local antes da validação OOS. O objetivo é reduzir a dependência de picos isolados e selecionar candidatos mais robustos.
preview
Desenvolvimento do Kit de Ferramentas de Análise de Price Action (Parte 21): Detector de Inversão da Estrutura de Mercado

Desenvolvimento do Kit de Ferramentas de Análise de Price Action (Parte 21): Detector de Inversão da Estrutura de Mercado

O Expert Advisor (EA) Market Structure Flip Detector atua como um parceiro atento, monitorando continuamente as mudanças no sentimento do mercado. Utilizando limites baseados no Average True Range (ATR), ele detecta com eficiência as mudanças na estrutura do mercado e identifica cada higher low (HL) e lower high (LH) com marcadores claros. Graças à rápida execução do MQL5 e à flexibilidade de sua API, essa ferramenta realiza análises em tempo real, ajusta a exibição para proporcionar melhor legibilidade e disponibiliza um painel dinâmico para acompanhar a quantidade de flips e os horários/intervalos dos flips. Além disso, notificações sonoras e push personalizáveis garantem que você seja informado sobre sinais importantes, demonstrando como parâmetros simples e funções auxiliares podem transformar movimentos de preço em estratégias acionáveis.
preview
Data Science e ML (Parte 37): Utilizando padrões de Candlestick e IA para superar o mercado

Data Science e ML (Parte 37): Utilizando padrões de Candlestick e IA para superar o mercado

Os padrões de candlestick ajudam os traders a compreender a psicologia do mercado e a identificar tendências nos mercados financeiros, permitindo decisões de negociação mais bem fundamentadas, que podem levar a melhores resultados. Neste artigo, exploraremos como utilizar padrões de candlestick em conjunto com modelos de IA para buscar um desempenho de negociação otimizado.
preview
Ciência de Dados e ML (Parte 36): Lidando com Mercados Financeiros Tendenciosos

Ciência de Dados e ML (Parte 36): Lidando com Mercados Financeiros Tendenciosos

Os mercados financeiros não são perfeitamente equilibrados. Alguns mercados apresentam tendência de alta, outros apresentam tendência de baixa, enquanto outros apresentam movimento lateral, indicando incerteza quanto à direção. Quando essas informações desbalanceadas são utilizadas para treinar modelos de machine learning, elas podem gerar resultados enganosos, especialmente porque as condições do mercado mudam com frequência. Neste artigo, discutiremos diferentes maneiras de lidar com esse problema.
preview
Criação de EAs auto-otimizáveis em MQL5 (Parte 7): Negociação simultânea com indicadores de vários períodos

Criação de EAs auto-otimizáveis em MQL5 (Parte 7): Negociação simultânea com indicadores de vários períodos

Nesta série de artigos, analisamos várias maneiras de determinar o melhor período para utilizar nossos indicadores técnicos. Hoje, mostraremos como aplicar a lógica oposta, ou seja, em vez de selecionar um único período considerado o mais adequado, veremos como utilizar de forma eficiente todos os períodos disponíveis. Essa abordagem reduz a quantidade de dados descartados e oferece formas alternativas de aplicar algoritmos de machine learning, indo além da simples previsão de preços.
preview
Criando um Painel Administrativo de Trading em MQL5 (Parte X): Interface baseada em recursos externos

Criando um Painel Administrativo de Trading em MQL5 (Parte X): Interface baseada em recursos externos

Hoje, estamos aproveitando as capacidades do MQL5 para utilizar recursos externos — como imagens no formato BMP — a fim de criar uma interface inicial com estilo exclusivo para o Painel de Administração de Negociações. A estratégia apresentada aqui é especialmente útil quando precisamos agrupar diversos recursos, incluindo imagens, sons e outros elementos, facilitando sua distribuição. Ao longo deste artigo, veremos como implementar esses recursos para criar uma interface moderna e visualmente atraente para nosso EA New_Admin_Panel.
preview
Desenvolvimento de ferramentas para análise de Price Action (Parte 24): Ferramenta de análise quantitativa de Price Action

Desenvolvimento de ferramentas para análise de Price Action (Parte 24): Ferramenta de análise quantitativa de Price Action

Os padrões de candles fornecem informações valiosas sobre possíveis movimentos do mercado. Alguns candles sinalizam a continuação da tendência atual, enquanto outros antecipam uma reversão, dependendo de onde se formam na estrutura do movimento do preço. Neste artigo, apresentamos um EA que identifica automaticamente quatro padrões de candles importantes. Nas seções a seguir, você verá como essa ferramenta pode aprimorar sua análise de Price Action.
preview
Machine Learning e Data Science (Parte 41): YOLOv8v para detectar padrões nos mercados Forex e de ações

Machine Learning e Data Science (Parte 41): YOLOv8v para detectar padrões nos mercados Forex e de ações

A identificação de padrões gráficos nos mercados financeiros é uma tarefa complexa, pois exige a análise dos dados exibidos no gráfico, algo difícil de realizar em MQL5 devido às limitações relacionadas ao processamento de imagens. Neste artigo, veremos um modelo bastante interessante em Python que permite detectar padrões no gráfico com o mínimo de esforço.
preview
Desenvolvimento de ferramentas para análise de Price Action (Parte 23): Indicador de força das moedas

Desenvolvimento de ferramentas para análise de Price Action (Parte 23): Indicador de força das moedas

Você sabe o que realmente determina a direção de um par de moedas? A força de cada moeda individualmente. Neste artigo, vamos medir a força de uma moeda analisando todos os pares dos quais ela faz parte. Isso permitirá prever o movimento desses pares com base na força relativa das moedas que os compõem. Continue lendo para saber mais.
preview
Machine Learning e Data Science (Parte 40): Uso dos níveis de Fibonacci em dados para machine learning

Machine Learning e Data Science (Parte 40): Uso dos níveis de Fibonacci em dados para machine learning

Os níveis de retração de Fibonacci são uma ferramenta popular na análise técnica. Eles são usados para identificar possíveis zonas de reversão. Neste artigo, veremos como esses níveis de retração podem ser transformados em variáveis-alvo para modelos de machine learning, ajudando-os a compreender melhor o mercado.
preview
Machine Learning e Data Science (Parte 39): Testando a combinação de notícias com IA

Machine Learning e Data Science (Parte 39): Testando a combinação de notícias com IA

As notícias exercem uma influência significativa sobre os mercados financeiros, principalmente quando se trata de divulgações importantes, como os dados de emprego no setor não agrícola (Non-Farm Payrolls, NFP). Já vimos várias vezes como uma única manchete pode provocar oscilações bruscas nos preços. Neste artigo, analisaremos em detalhes a combinação entre notícias e os recursos da inteligência artificial.
preview
Desenvolvimento de ferramentas para análise de Price Action (Parte 22): Painel de correlação

Desenvolvimento de ferramentas para análise de Price Action (Parte 22): Painel de correlação

Esta ferramenta consiste em um painel de correlações que calcula e exibe, em tempo real, os coeficientes de correlação de vários pares de moedas. Ao mostrar como os pares se movimentam em relação uns aos outros, a ferramenta acrescenta um contexto importante à análise de Price Action e ajuda a compreender melhor as relações entre diferentes mercados. Vamos analisar seus recursos e possíveis aplicações.
preview
Criação de um painel administrativo de trading em MQL5 (Parte XI): Interface moderna de mensagens na plataforma (I)

Criação de um painel administrativo de trading em MQL5 (Parte XI): Interface moderna de mensagens na plataforma (I)

Hoje vamos aprimorar a interface de troca de mensagens do painel de comunicação e alinhá-la aos padrões dos aplicativos modernos de comunicação de alto desempenho. Para isso, atualizaremos a classe CommunicationsDialog. Analisaremos todas essas alterações em detalhes e também definiremos os próximos passos para a evolução das interfaces dos nossos programas em MQL5.
preview
Machine Learning e Data Science (Parte 38): Aplicação de Transfer Learning nos mercados de câmbio

Machine Learning e Data Science (Parte 38): Aplicação de Transfer Learning nos mercados de câmbio

Os avanços em inteligência artificial que vemos nas notícias, do ChatGPT aos veículos autônomos, não surgem de modelos isolados, mas do conhecimento acumulado e transferido entre diferentes modelos ou domínios mais amplos. Agora, essa mesma abordagem de "treinar uma vez, aplicar em qualquer lugar" pode ser usada para aprimorar nossos modelos de IA voltados à negociação algorítmica. Neste artigo, veremos como aproveitar dados obtidos de diferentes instrumentos para melhorar as previsões por meio de Transfer Learning.
preview
Desenvolvimento do Kit de Ferramentas de Análise de Price Action (Parte 20): Fluxo Externo (IV) — Correlation Pathfinder

Desenvolvimento do Kit de Ferramentas de Análise de Price Action (Parte 20): Fluxo Externo (IV) — Correlation Pathfinder

O Correlation Pathfinder oferece uma nova abordagem para compreender a dinâmica dos pares de moedas como parte da Série de Desenvolvimento do Kit de Ferramentas de Análise de Price Action. Essa ferramenta automatiza a coleta e a análise de dados, fornecendo insights sobre como pares como EUR/USD e GBP/USD interagem. Aprimore sua estratégia de trading com informações práticas e em tempo real que ajudam você a gerenciar riscos e identificar oportunidades com mais eficiência.
preview
Integração rápida de um grande modelo de linguagem com o MetaTrader 5 (Parte I): Criando o modelo

Integração rápida de um grande modelo de linguagem com o MetaTrader 5 (Parte I): Criando o modelo

O artigo explora uma integração revolucionária entre grandes modelos de linguagem (LLM) e a plataforma de trading MetaTrader 5, na qual a AI não se limita a prever preços, mas toma decisões de negociação de forma autônoma, analisando o contexto do mercado como faria um trader experiente. O autor mostra a diferença fundamental entre os LLM e modelos clássicos de machine learning, como o CatBoost: a capacidade de metacognição e autorreflexão, que permite ao sistema aprender com os próprios erros e aprimorar sua estratégia.
preview
Equipe de agentes de IA com rotação baseada no lucro: a evolução de um sistema de trading vivo em MQL5

Equipe de agentes de IA com rotação baseada no lucro: a evolução de um sistema de trading vivo em MQL5

Gestão financeira como ecossistema: sete traders de IA, cada um com personalidade e estratégia próprias, em vez de um único algoritmo. Eles competem pelo capital, aprendem com os erros e tomam decisões em conjunto. O artigo apresenta os princípios de funcionamento do sistema Modern RL Trader, no qual o código é dotado de consciência e emoções, dando origem a uma inteligência de trading viva e em constante evolução.
preview
Sistema de autoaprendizado por reforço para trading algorítmico em MQL5

Sistema de autoaprendizado por reforço para trading algorítmico em MQL5

Neste artigo, desenvolvemos um sistema multiagente de aprendizado de máquina para trading algorítmico no MetaTrader 5 com base em aprendizado por reforço. O sistema possui uma arquitetura de três níveis: os neurônios de memória armazenam a experiência, os agentes tomam decisões de forma independente e a inteligência coletiva combina essas decisões por meio de votação ponderada. O sistema se aperfeiçoa continuamente por meio de Q-learning, pruning de neurônios ineficientes e redução evolutiva do nível de exploração.
preview
Métodos de amostragem MCMC: algoritmo de amostragem por fatias (Slice Sampling)

Métodos de amostragem MCMC: algoritmo de amostragem por fatias (Slice Sampling)

Neste artigo, estudamos o método de amostragem por fatias (slice sampling), um algoritmo MCMC adaptativo que ajusta automaticamente os parâmetros de amostragem. Sua eficiência é demonstrada em modelos bayesianos de regressão linear e logística, e os resultados são comparados com métodos frequentistas clássicos.
preview
Métodos de amostragem MCMC - Algoritmo de Metropolis-Hastings

Métodos de amostragem MCMC - Algoritmo de Metropolis-Hastings

O algoritmo de Metropolis-Hastings é um método fundamental de Monte Carlo via cadeias de Markov (MCMC), amplamente utilizado para aproximar distribuições a posteriori na inferência bayesiana. O artigo apresenta os fundamentos teóricos do algoritmo, a implementação da classe MHSampler em MQL5 e exemplos de aplicação com análise das amostras obtidas.
preview
Algoritmo de estrutura cristalina, Crystal Structure Algorithm (CryStAl)

Algoritmo de estrutura cristalina, Crystal Structure Algorithm (CryStAl)

O artigo apresenta duas versões do Algoritmo de Estrutura Cristalina: a original e a modificada. O Crystal Structure Algorithm (CryStAl), publicado em 2021 e inspirado na física das estruturas cristalinas, foi apresentado como uma meta-heurística parameter-free para otimização global. No entanto, os testes revelaram um problema crítico no algoritmo. O artigo também apresenta a versão modificada CryStAlm, que corrige as principais deficiências da versão original.
preview
Análise da influência dos ciclos solares e lunares sobre os preços das moedas

Análise da influência dos ciclos solares e lunares sobre os preços das moedas

E se os ciclos lunares e os padrões sazonais influenciarem os mercados cambiais? Este artigo mostra como traduzir conceitos astrológicos para a linguagem da matemática e do machine learning. Criei um sistema em Python com 88 atributos baseados em ciclos astronômicos, treinei o CatBoost com 15 anos de dados do EUR/USD e obtive resultados intrigantes. O código é aberto, os métodos podem ser verificados e as conclusões são inesperadas: a sabedoria antiga encontra o gradient boosting.
preview
Algoritmo de sistema artificial de circulação coronariana (Artificial Coronary Circulation System, ACCS)

Algoritmo de sistema artificial de circulação coronariana (Artificial Coronary Circulation System, ACCS)

Algoritmo meta-heurístico que simula o crescimento das artérias coronárias do coração humano para resolver problemas de otimização. Utiliza os princípios da angiogênese (crescimento de novos vasos), da bifurcação (ramificação) e da poda de ramos fracos para buscar soluções ótimas em um espaço multidimensional. Os testes de sua eficiência em uma ampla variedade de problemas produziram resultados inesperados.
preview
Mapas auto-organizáveis de Kohonen em um EA MQL5

Mapas auto-organizáveis de Kohonen em um EA MQL5

Os mapas auto-organizáveis de Kohonen transformam o caos dos dados de mercado em um mapa bidimensional estruturado, no qual padrões semelhantes são agrupados. Este artigo apresenta uma implementação completa de SOM em um EA MQL5, com quatrocentos neurônios e treinamento contínuo. Analisamos o algoritmo de busca pela Best Matching Unit, a atualização dos pesos com uma função gaussiana de vizinhança, a integração com efeitos quânticos e a geração de sinais de trading. O código é aberto, a matemática é clara e os resultados podem ser verificados.
preview
Algoritmo dos Macacos-Azuis — Blue Monkey (BM) Algorithm

Algoritmo dos Macacos-Azuis — Blue Monkey (BM) Algorithm

O artigo apresenta uma implementação do algoritmo meta-heurístico Blue Monkey, baseado na modelagem do comportamento social dos macacos-azuis. São abordados os principais mecanismos do algoritmo: a estrutura da população em grupos, a orientação pelos líderes locais e a renovação geracional por meio da substituição dos piores indivíduos adultos pelos melhores filhotes, além da análise dos resultados dos testes.
preview
Desenvolvendo uma Estratégia de Pullback: Validação

Desenvolvendo uma Estratégia de Pullback: Validação

A etapa de validação de um pullback avança com inclinação das EMAs, limites mínimo e máximo de distância por ATR, janela flexível do gatilho ATR e Walk-Forward Efficiency. As baterias comparam componentes e medem continuidade fora da amostra, dependência exclusiva da gestão. O resultado destaca plataformas paramétricas e critérios práticos para selecionar candidatos e evitar sobreajuste.
preview
Criação de um robô market-neutral probabilístico com base na distribuição dos retornos

Criação de um robô market-neutral probabilístico com base na distribuição dos retornos

Uma estratégia de trading market-neutral baseada na distribuição empírica dos retornos oferece uma alternativa aos métodos clássicos de análise técnica, substituindo a previsão da direção do preço pelo posicionamento estatístico de ordens em níveis com determinada probabilidade de serem atingidos. O artigo analisa em detalhes o formalismo matemático usado no cálculo de percentis, os algoritmos de ponderação do volume das posições de acordo com a probabilidade de execução e os mecanismos de adaptação às mudanças nas condições de mercado por meio da expiração da grade. Também é apresentada uma implementação completa em MQL5.
preview
Previsão da distribuição condicional com uma MLP

Previsão da distribuição condicional com uma MLP

Neste artigo, analisaremos um modelo de regressão baseado em MLP que prevê não apenas a esperança matemática condicional, mas também a variância condicional. Em outras palavras, treinaremos nossa rede para prever toda a distribuição dos preços futuros com base em um vetor de atributos de entrada. Para isso, porém, precisaremos implementar nossa própria função de perda.
preview
Algoritmo do Bisão: Bison Algorithm (BIA)

Algoritmo do Bisão: Bison Algorithm (BIA)

O novo método de otimização Bison Algorithm (BIA) combina duas estratégias inspiradas no comportamento dos bisões para resolver problemas contínuos com uma única função objetivo. O BIA se baseia em dois princípios fundamentais observados no comportamento dos bisões: a capacidade de deslocamento dinâmico e a estratégia defensiva.
preview
Equação simbólica para prever o preço com SymPy

Equação simbólica para prever o preço com SymPy

O artigo apresenta uma abordagem interessante para o trading algorítmico, baseada em equações matemáticas simbólicas, em vez das tradicionais "caixas-pretas" do machine learning. O autor mostra como transformar redes neurais pouco transparentes em fórmulas matemáticas legíveis usando a biblioteca SymPy e regressão polinomial, o que permite compreender por completo a lógica por trás das decisões de trading. A abordagem combina o poder computacional do ML com a transparência dos métodos clássicos, permitindo que o trader analise, ajuste e adapte os modelos em tempo real.
preview
Modificação do algoritmo de otimização Dingo: Dingo Optimization Algorithm M (DOAm)

Modificação do algoritmo de otimização Dingo: Dingo Optimization Algorithm M (DOAm)

A modificação do algoritmo Dingo proposta pelo autor e apresentada neste artigo elevou consideravelmente o patamar na busca pelo melhor algoritmo de otimização. Será que ainda é possível alcançar resultados superiores?
preview
Desenvolvendo uma Estratégia de Pullback: Construção do Modelo Base

Desenvolvendo uma Estratégia de Pullback: Construção do Modelo Base

Este artigo apresenta a evolução de um EA de pullback em MQL5, desde a definição do regime por EMA até a identificação da retração e a confirmação do gatilho. São abordados a otimização integrada ao MetaTrader 5, o stop ajustado ao tick size, o filtro de distância por ATR e a gestão com breakeven e trailing, priorizando platôs paramétricos, controle dos graus de liberdade e redução do risco de overfitting.
preview
Robô de trading multithreaded com machine learning: da concepção à concretização

Robô de trading multithreaded com machine learning: da concepção à concretização

O artigo apresenta o desenvolvimento passo a passo de um robô de trading multithreaded com machine learning com Python e MetaTrader 5. O texto analisa a arquitetura do sistema, da coleta de dados e criação de indicadores técnicos ao treinamento de modelos XGBoost com gestão de risco no nível do portfólio. Também detalha a implementação de data augmentation, a clusterização de atributos por meio de Gaussian Mixture Models e a coordenação de threads para operar vários pares de moedas em paralelo.
preview
Algoritmo de otimização do dingo - Dingo Optimization Algorithm (DOA)

Algoritmo de otimização do dingo - Dingo Optimization Algorithm (DOA)

O artigo apresenta um novo método metaheurístico baseado nas estratégias de caça dos dingos australianos: ataque em grupo, perseguição e busca de carniça. Vamos ver como o algoritmo de otimização do dingo (DOA) se sai em termos algorítmicos.
preview
Arbitragem Estatística via Reversão à Média no Trading de Pares: Superando o Mercado com Matemática

Arbitragem Estatística via Reversão à Média no Trading de Pares: Superando o Mercado com Matemática

Este artigo descreve os fundamentos da arbitragem estatística em nível de portfólio. Seu objetivo é facilitar a compreensão dos princípios da arbitragem estatística para leitores sem conhecimentos aprofundados em matemática e propor uma estrutura conceitual inicial. O artigo inclui um Expert Advisor funcional, algumas observações sobre seu backtest de um ano e as respectivas configurações do backtest (arquivo .ini) para a reprodução do experimento.
preview
Trading algorítmico de arbitragem com teoria dos grafos

Trading algorítmico de arbitragem com teoria dos grafos

Neste artigo, tratamos a arbitragem triangular como um problema de busca de ciclos em um grafo orientado, no qual os vértices representam moedas e as arestas representam pares de moedas com pesos correspondentes às taxas de câmbio. Um ciclo lucrativo ocorre quando o produto dos pesos é > 1. Os algoritmos Floyd-Warshall e DFS que desenvolvemos encontram os caminhos ideais de conversão de moedas com retorno ao ponto inicial e geração de lucro.