[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 75

 
Você pode me dizer qual código escrever, para que quando o negócio for fechado, o próximo negócio possa ser aberto somente no próximo bar?
 
Você pode me dizer como fazer castiçais na tabela de preços para serem coloridos de verde quando o Awesome Oscillator e o Acceleration/Deceleration Oscillator são verdes, para serem coloridos de vermelho quando o Awesome Oscillator e o Acceleration/Deceleration Oscillator são vermelhos, e quando os indicadores são de cores diferentes, os castiçais devem ser cinza?
 
gmMarat писал(а) >>
Você pode me dizer qual código deve ser escrito para fechar um negócio, para que o próximo negócio possa ser aberto somente no próximo bar?

Então a questão é: Como você fecha o negócio? É uma parada (que é mais complicada), ou fechamo-la nós mesmos? Se nós mesmos a fecharmos, é muito mais fácil.

 
Nosferatu писал(а) >>
Você pode me dizer como fazer castiçais na tabela de preços para serem coloridos de verde quando o Awesome Oscillator e o Acceleration/Deceleration Oscillator são verdes, para serem coloridos de vermelho quando o Awesome Oscillator e o Acceleration/Deceleration Oscillator são vermelhos, e quando os indicadores são de cores diferentes, para fazer castiçais de cinza?

Nunca pintei um candelabro, mas definitivamente vi este peru na base. Realmente, há cerca de quatro meses. Procure-o.

 
infinum13 >> :

Então a questão é: Como você fecha o negócio? É uma parada (que é mais complicada), ou fechamo-la nós mesmos? Se nós mesmos a fecharmos, é muito mais fácil.

Os negócios são fechados em Take Profit ou Stop Loss!

 

Pergunta.

Eu tenho um indicador que escreve uma citação para a ferramenta como esta - 2321.50000000


Como posso me livrar de zeros extras?

 

Muito bom em escrever aqui especialistas. http://www.vedikhin.ru/2006/06/expert-advisors-overview.html

E que os deuses me perdoem, está no formato Wordov .

Arquivos anexados:
 

Ajude-me também.

Limitações do compilador. Eu gostaria de saber sobre restrições em arrays (quantos arrays ou número total de elementos ou algo mais como memória alocada), e sobre o número de variáveis globais no sentido de variáveis superglobais.

 

Olá a todos.

Decidi escrever a um especialista. Levou um Stoch para isso. Acho que deveria ter apenas um pedido, mas venderá acima de 80 e fechará abaixo de 50. Também acrescentei StopLoss a fim de reduzir as perdas. Eu o testei. O especialista parece estar trabalhando, mas às vezes o StopLosses é levado um após o outro. Portanto, decidi mudar as condições comerciais após a primeira Perda para torná-las significativamente diferentes das iniciais. Para este fim, introduzi a função isCloseLastPosByStop que tirei da Kima e gostei. Se o Loss é trabalhado, ele envia sinais e escreve na revista; após o sinal if(SSL===verdadeiro) eu estabeleço novas condições de venda. Eu o escrevi, compilei, lancei - funciona, mas também é preciso vários LossO em alguns lugares seguidos para fazê-lo parar. Como não tenho muita experiência em MQL4, não sei o que está errado. Por favor, me ajude de qualquer maneira que você possa..... nós não somos daqui...... E talvez alguém me diga como implementar esta idéia de outra maneira. Obrigado de antemão, este é um bom lugar, eu nunca fui sem aconselhamento qualificado....


#propriedade copyright "Alex

#link da propriedade "http://www.сайта.net"
//---- parâmetros de entrada
int int int externo MagicNamber=88881;
externo int K_per=30;
externo int D_per=8;
externo int Slow=10;
Lotes duplos externos=1,0;
StopLoss duplo externo=300;
duplo externo SSL=0;

//+------------------------------------------------------------------+

int start()
{
int
cnt=0,
bilhete,
total;
duplo
StochK_0, // Valor da linha K
StochD_1, // valor da linha D
SL=StopLoss;
isCloseLastPosByStop();
se (Bars<100)
{
Impressão ("barras com menos de 100");
retorno(0);
}
StochK_0=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 0); // K
StochD_1=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 2); //D
total=OrdensTotal();
if(total<1)
if ((StochK_0>StochD_1) && StochD_1 > 80) // condição de venda
{
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*Point,0, "My EXP", MagicNamber,0,Green);
if(bilhete>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
Imprimir("Pedido de venda aberto : ",OrderOpenPrice())
}
else Print("Error opening SELL order : ",GetLastError()));
retorno(0);
}
for(cnt=0;cnt<total;cnt++)
{
RefreshRates();
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // esta é uma posição aberta? OP_BUY ou OP_SELL
OrderSymbol()==Symbol()) // combinação de ferramentas?
{
if(OrderType()==OP_SELL) // posição está aberta
SSL=isCloseLastPosByStop();
if(SSL===verdadeiro
)
{
Imprimir("StopLoss");
}
total=OrdensTotal();
if(total<1)
se ((StochK_0<StochD_1) && StochK_0 < 50) // condição de venda se o StopLoss for acionado
{
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*Point,0, "My EXP", MagicNamber,0,Green);
if(bilhete>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
Imprimir("Pedido de venda aberto : ",OrderOpenPrice())
}
else Print("Error opening SELL order : ",GetLastError()));
retorno(0);
}
for(cnt=0;cnt<total;cnt++)
{
RefreshRates();
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // esta é uma posição aberta? OP_BUY ou OP_SELL
OrderSymbol()==Symbol()) // combinação de ferramentas?
{
if(OrderType()==OP_SELL) // posição está aberta
{
if(StochK_0>StochD_1 && StochD_1 < 50) // condição de fechamento
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // posição fechada
retornar(0); // sair
}}}}}}}
//___utilizador fu-ya
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
data/hora t;
duplo ocp, osl;
int dg, i, j=-1, k=OrdersHistoryTotal();

se (sy=="0") sy=Símbolo();
para (i=0; i<k; i++) {
se (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
se (OrderSymbol()==sy ||| sy==") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
se (op<0 || OrderType()==op) {
se (mn<0 || OrderMagicNumber()==mn) {
se (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}}}}}}}
se (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
dg=MarketInfo(sy, MODE_DIGITS);
if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; caso contrário dg=2;
ocp=NormalizeDouble(OrderClosePrice(), dg);
osl=NormalizeDouble(OrderStopLoss(), dg);
if (ocp===osl) return(True);
}
retorno(Falso);
}
 
luka писал(а) >>

Pergunta.

Eu tenho um indicador que escreve uma citação para a ferramenta como esta - 2321.50000000

Como se livrar de zeros extras?

O operador DoubleToStr() irá lhe ajudar.

Razão: