Funciones útiles de KimIV - página 38

 
obabuev писал (а) >>
Cómo añadir int b a la cadena Time2 minutes now o cómo sumar menos hacerla aleatoria
void start() {
  int a=MathFloor(MathRand()/32767.0*300);
  int b=-MathFloor(MathRand()/32767.0*300);
  Comment("a=",a," b=",b,"\n",
          "плюс ",TimeToStr(TimeLocal()+a, TIME_SECONDS),"\n",
          "минус ",TimeToStr(TimeLocal()+b, TIME_SECONDS));
}
 

Le rogamos que nos indique los métodos existentes para limitar el número de pedidos:

1) cómo vincular el número de pedidos al saldo disponible, de modo que haya una dinámica, por ejemplo, si los fondos disponibles son inferiores a la mitad del saldo, entonces se activa el límite

2) Cómo limitar el número de órdenes simultáneas a un valor fijo, por ejemplo, 10

 
KimIV писал (а) >>
Gracias Igor,
Es muy simple y fácil de codificar, como todos los profesionales.
Sólo que nunca pensé que sería incapaz de explicarlo con palabras, y mucho menos de escribir el código.
Lo que necesito es que el desplazamiento aleatorio provenga de un oscilador pero de forma aleatoria en ambas direcciones.
Por ejemplo, como puntero oscilando cerca de cero (bajando y luego subiendo).
Y este mi cero, o el valor medio será mi tiempo establecido.
¿Cómo puedo dividir toda la aleatoriedad en dos partes en el medio?
¿Funcionará así?
void start() {
int a=MathFloor(MathRand()/32767.0*300);
if (a > 150) a=-a;
Comment("a=",a,"\n",
"más o menos ",TimeToStr(TimeLocal()+a, TIME_SECONDS) );
}
Además, estoy tratando de hacer esto en un indicador.
¿Será correcto TimeToStr(TimeLocal()+a,TIEMPO_SECONDIOS) o debería TimeToStr(Time[i] +a,TIEMPO_SECONDIOS) o TimeToStr(iTime(NULL,0,i)+a) o ????
>>Gracias por su ayuda.
 
obabuev писал (а) >>
Necesito que el desplazamiento aleatorio se produzca desde un oscilador pero en ambas direcciones de forma aleatoria.
Es como la mano oscilante cerca del cero (subiendo y bajando).
Y este mi cero, o el valor medio será mi tiempo establecido.
De alguna manera todo debe estar dividido en dos partes por casualidad en el medio o qué?

Entonces es así:

void start() {
  int a=MathFloor(MathRand()/32767.0*300)-150;
  Comment("a=",a,"\n",
          "плюс-минус ",TimeToStr(TimeLocal()+a, TIME_SECONDS));
}
obabuev escribió (a) >>
¿Sería correcto TimeToStr(TimeLocal()+a,TIME_SECONDS) o debería TimeToStr(Time[i] +a,TIME_SECONDS) o TimeToStr(iTime(NULL,0,i)+a) o ????

¿Cómo sé lo que está bien y lo que está mal? Sólo tú puedes saberlo. Yo sólo explicaré qué código significa qué, y tú decidirás por ti mismo lo que necesitas y lo que te conviene.

TimeToStr(TimeLocal()+a,TIME_SECONDS)

Se añade un segundo a la hora local en segundos y el resultado se convierte en una cadena.

TimeToStr(Time[i] +a,TIME_SECONDS)

Añadimos un segundo a la hora del ordenador local en segundos y el resultado se convierte en una cadena.

TimeToStr(iTime(NULL,0,i)+a)
Se añade un segundo a la hora de apertura de la barra i-ésima en el gráfico actual en segundos y el resultado se convierte en una línea.
 
AlexDub писал (а) >>

Le rogamos que nos indique los métodos existentes para limitar el número de pedidos:

1) cómo vincular el número de pedidos al saldo disponible, de modo que haya una dinámica, por ejemplo, si los fondos disponibles son inferiores a la mitad del saldo, entonces se activa el límite

2) Cómo limitar el número de pedidos a una cantidad fija, por ejemplo 10

if (AccountFreeMargin()<AccountBalance()/2.0) {
  // срабатывает ограничение
}
AlexDub escribió (a) >>
Por favor, ¿pueden decirme qué métodos utilizar para limitar el número de órdenes?
2) cómo limitar el número de órdenes simultáneas a un valor fijo, por ejemplo, 10
if (OrdersTotal()>=10) {
  // срабатывает ограничение
}
 
KimIV писал (а) >>

>> Entonces es así:

>> Gracias,
>> un monumento a ti.

 
obabuev писал (а) >>

Necesitas un monumento.

Todavía no :))

 
Entonces un busto de bronce en casa... ;)
 

¡Qué amables son todos! También podrías dispararte a ti mismo

 

Bueno, al menos el busto es algo bueno...

Deberían haberlo puesto para dos héroes de la URSS en vida.

A costa del Estado... :)))