------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ //+------------------------------------------------------------------+ //| CloseTrades_After_Account_Profit_Reached.mq4 | //| Copyright © 2007, Tradinator | //| tradinator.fx@gmail.com | //+------------------------------------------------------------------+ #property copyright "Copyright © 2007, Tradinator" #property link "tradinator.fx@gmail.com" extern double My_Money_Profit_Target=100; //The amount of money profit at which you want to close ALL open trades. extern string Profit_Target= "Enter above To Close all OPEN trades when amount of profit is Reached in Account and not per OPEN trade! "; int Slippage=5; int i; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { if (AccountProfit()>= My_Money_Profit_Target) { for(i=OrdersTotal()-1;i>=0;i--) { OrderSelect(i, SELECT_BY_POS); int type = OrderType(); bool result = false; switch(type) { //Close opened long positions case OP_BUY : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),Slippage,Pink); break; //Close opened short positions case OP_SELL : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),Slippage,Pink); } if(result == false) { Sleep(0); } } Print ("Account Profit Reached. All Open Trades Have Been Closed"); return(0); } Comment("Balance: ",AccountBalance(),", Account Equity: ",AccountEquity(),", Account Profit: ",AccountProfit(), "\nMy Account Profit Target: ",My_Money_Profit_Target); return(0); } ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Olá,
Encontrei este roteiro fora da web, tudo graças e direitos autorais para aquele cara.
Eu não entendo a codificação, mas alguém poderia por favor me avisar se isto considerar "SPREAD" ao fechar os pedidos?
Aqui está a pasta de cópia do código
Como não sei nada sobre codificação ou regras, não estou apagando nenhuma informação sobre direitos autorais ou seu e-mail, ou ... espero não estar quebrando nenhuma regra do fórum :)
Aqui está um código, não tenho certeza se seu EA ou se é um SCRIPT ...
Olá tatyawinchu,
O EA apresentado não parece adequado para o seu propósito. É uma espécie de EA incompleta (especialista).
//+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+
A EA começa verificando o lucro de sua conta e se em lucro por no mínimo 100 fecha todos os pedidos.
Digamos que você tenha uma boa negociação, acabou de ganhar 200 dólares. O lucro de sua conta é de 200. Você abre uma nova negociação e depois executa esta EA.
Desde o início, ele verificará se a conta está em lucro (é de uma operação anterior) e, em caso afirmativo, fechará a operação. Não é bom.
Você precisa de um roteiro que monitore o lucro do pedido e feche o pedido quando o objetivo for alcançado. Ou, se você pretende colocar mais de um pedido, ele deve monitorar a soma dos lucros de todos os pedidos.
Você precisa de algo que pelo menos conte seu lucro a partir do momento em que você o inicia, mas o melhor seria um EA que verificasse o patrimônio da conta quando o pedido é feito e contasse o lucro a partir desse ponto.
Você pode procurar no fórum por EA's de gerenciamento de dinheiro ou scripts e, se não encontrar o que precisa, pode postar aqui mais detalhes .
Espero que ajude
Olá tatyawinchu,
O EA apresentado não parece adequado para o seu propósito. É uma espécie de EA incompleta (especialista).
A EA começa verificando o lucro de sua conta e se em lucro por no mínimo 100 fecha todos os pedidos.
Digamos que você tenha uma boa negociação, acabou de ganhar 200 dólares. O lucro de sua conta é de 200. Você abre uma nova negociação e depois executa esta EA.
Desde o início, ele verificará se a conta está em lucro (é de uma operação anterior) e, em caso afirmativo, fechará a operação. Não é bom.
Você precisa de um roteiro que monitore o lucro do pedido e feche o pedido quando o objetivo for alcançado. Ou, se você pretende colocar mais de um pedido, ele deve monitorar a soma dos lucros de todos os pedidos.
Você precisa de algo que pelo menos conte seu lucro a partir do momento em que você o inicia, mas o melhor seria um EA que verificasse o patrimônio da conta quando o pedido é feito e contasse o lucro a partir desse ponto.
Você pode procurar no fórum por EA's de gerenciamento de dinheiro ou scripts e se você não encontrar o que precisa, pode postar aqui mais detalhes .
Espero que ajude
Muito obrigado por sua resposta rápida ...
Mais algumas perguntas rápidas sobre este assunto:-
Estilo de negociação: ... Min trocas abertas a qualquer momento é UM, Max trocas abertas a qualquer momento é apenas DOIS ...[ pares diferentes] ... Eu vou transformar EA/Script em 'ON' quando eu executar a primeira troca ... Agora, se X pips de lucros forem alcançados, eu estou tentando procurar EA que fechará a ordem por 'considerando o spread de pedido de compra quando estiver calculando X' ...
Agora, se tivermos outra ordem em outro par, então no total DOIS ordens, ainda quando o lucro total vai para X lucros, EA deve fechar ambas as ordens e seu DEVE considerar o custo de spread de ambos e fechar X como lucro PURO ...
Por exemplo ... digamos que o spread para o par A é 5 pips e o spread para o par b é 10 pips ... Se eu fizer um ajuste no EA como saída a 10 pips de lucro, o EA deve sair depois de considerar que 15 pips é o spread a ser pago mais 10 pips de lucro para mim ... para ser mais claro, ele não deve fechar a ordem a 10 pips com a soma total terminando em -5 por causa de 15 spread...
Essas coisas estão disponíveis e são possíveis no MT4 ?
obrigado homem.
obrigado homem :)
Muito obrigado por sua resposta rápida ...
Mais algumas perguntas rápidas sobre este assunto:-
Estilo de negociação: ... Min trocas abertas a qualquer momento é UM, Max trocas abertas a qualquer momento é apenas DOIS ...[ pares diferentes] ... Eu vou transformar EA/Script em 'ON' quando eu executar a primeira troca ... Agora, se X pips de lucros forem alcançados, eu estou tentando procurar EA que fechará a ordem por 'considerando o spread de pedido de compra quando estiver calculando X' ...
Agora, se tivermos outra ordem em outro par, então no total DOIS ordens, ainda quando o lucro total vai para X lucros, EA deve fechar ambas as ordens e seu DEVE considerar o custo de spread de ambos e fechar X como lucro PURO ...
Por exemplo ... digamos que o spread para o par A é 5 pips e o spread para o par b é 10 pips ... Se eu fizer um ajuste no EA como saída a 10 pips de lucro, o EA deve sair depois de considerar que 15 pips é o spread a ser pago mais 10 pips de lucro para mim ... para ser mais claro, ele não deve fechar a ordem a 10 pips com a soma total terminando em -5 por causa de 15 spread...
Essas coisas estão disponíveis e são possíveis no MT4 ?
obrigado homem.
Sim, é possível porque o spread para cada par é variável e o spread em um par varia geralmente de acordo com o volume. Então você está procurando um roteiro/EA para administrar o lucro da ordem, possível em diferentes pares e sair de cada ordem em uma contabilidade de lucro especificada para o spread disponível no momento.
Não tenho nada pronto para fazer exatamente isso, mas tenho certeza de que podemos ajudá-lo. A menos que você queira uma EA personalizada e esteja disposto a postar um trabalho .
Eu manterei contato.
Eu acho que você vai encontrar que AccountProfit()
já é líquido de propagação.
Eu acho que você vai encontrar que AccountProfit()
já é líquido de propagação.
" already net of spread" = ? lamentavelmente mal em inglês ...
Encontrei isto no site de documentação
AccountProfit
Devolve o valor do lucro da conta corrente.
conta duplaProfit(); |
Valor retornado
Valor do lucro da conta corrente.
Exemplo:
Imprimir("lucro da conta", AccountProfit()); |
Não diz se considera spread ou se o doenst ... plz ajuda ?
" já líquido de spread" = ? desculpe mal em inglês ...
Encontrei isto no site de documentação
AccountProfit
Retorna o valor do lucro da conta corrente.
conta duplaProfit(); |
Valor retornado
Valor do lucro da conta corrente.
Exemplo:
Imprimir("lucro da conta", AccountProfit()); |
Não diz se considera spread ou se o doenst ... plz ajuda ?
Sim, já considera spread.
Se você tiver uma posição curta aberta, olhe na janela de negociação do terminal, sob a 2ª coluna de preços, você verá o Ask, este é o preço usado para OrderProfit e o spread já é permitido.
Sim, é possível, pois o spread para cada par é variável e o spread em um par varia normalmente de acordo com o volume. Portanto, você está procurando um roteiro/EA para administrar o lucro da ordem, possível em diferentes pares e sair de cada ordem em uma conta de lucro especificada para o spread disponível no momento.
Não tenho nada pronto para fazer exatamente isso, mas tenho certeza de que podemos ajudá-lo. A menos que você queira uma EA personalizada e esteja disposto a postar um trabalho .
Eu manterei contato.
Graças a uma carga... muito clara e muito útil... Pergunto-me quanto custaria postar um trabalho desses? Qual seria a dificuldade de classificar tal código? O código que eu obtive da web e que eu coloquei acima parece ENORME ... Quero dizer, eu realmente não posso gastar milhares de dólares...
Graças a uma carga... muito clara e muito útil... Pergunto-me quanto custaria postar um trabalho desses? Qual seria a dificuldade de classificar tal código? O código que eu obtive da web e que eu coloquei acima parece ENORME ... Quero dizer, eu realmente não posso gastar milhares de dólares...
Eu pensaria que você poderia conseguir este código por 20 ou 30 dólares.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Olá,
Encontrei este roteiro fora da web, tudo graças e direitos autorais para aquele cara.
Eu não entendo a codificação, mas alguém poderia por favor me avisar se isto considerar "SPREAD" ao fechar os pedidos?
Aqui está a pasta de cópia do código
Como não sei nada sobre codificação ou regras, não estou apagando nenhuma informação sobre direitos autorais ou seu e-mail, ou ... espero não estar quebrando nenhuma regra do fórum :)
Aqui está um código, não tenho certeza se seu EA ou se é um SCRIPT ...
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
//+------------------------------------------------------------------+
//| Fechar Comércio_Após_Conta_Lucro_Lucro_Realizado.mq4 |
//| Copyright © 2007, Tradinator |
//| tradinator.fx@gmail.com |
//+------------------------------------------------------------------+
#direitos de propriedade intelectual "Copyright © 2007, Tradinator"
#link da propriedade "tradinator.fx@gmail.com"
externo duplo My_Money_Profit_Target=100; // A quantidade de lucro em dinheiro na qual você quer fechar TODOS os negócios abertos.
string externa Profit_Target= "Enter above To Close all OPEN trades when amount of profit is Reached in Account and not per OPEN trade";
int Slippage=5;
int i;
//+------------------------------------------------------------------+
//| função de iniciação de especialista |
//+------------------------------------------------------------------+
int init()
{
//----
//----
retorno(0);
}
//+------------------------------------------------------------------+
//| função de desinicialização especializada |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
retorno(0);
}
//+------------------------------------------------------------------+
//| função de início especializado |
//+------------------------------------------------------------------+
int start()
{
if (AccountProfit()>= Minha_Alvo_de_Lucro_de_Vendas)
{
for(i=OrdensTotal()-1;i>=0;i--)
{
OrderSelect(i, SELECT_BY_POS);
tipo int = OrderType();
bool resultado = falso;
switch(tipo)
{
//fechar posições longas abertas
caso OP_BUY : resultado = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),Slippage,Pink);
quebra;
//fechar posições curtas abertas
caso OP_SELL : resultado = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),Slippage,Pink);
}
if(resultado == falso)
{
Dormir(0);
}
}
Imprimir ("Lucro da conta alcançado. Todos os negócios abertos foram fechados");
retornar(0);
}
Comentário("Saldo: ",AccountBalance(),", Patrimônio da Conta: ",AccountEquity(),", Lucro da Conta: ",AccountProfit(),
"\nMinha Conta Meta de lucro: ",Minha_Alvo_de_Lucro_Lucro);
retorno(0);
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Se isso não funcionar, estou procurando algo que feche TODOS os pedidos em X pips lucro APÓS considerar a propagação e as coisas
Muito obrigado.