busca un socio con un sistema de negociación de alta frecuencia - página 21

 

¡Has elegido la dirección correcta!

Sólo quedan cuestiones prácticas sobre la ejecución del proyecto.

No me necesitas ahora.

 
entradas:
AssetPr( 0 ),
YearsLeft( 0 ),
MyGamma( 0 ),
MyH( 0 ),
TriggerPr( 0 ),
Tasa( 0 ),
Carry( 0 ),
Volty( 0 ) ;

variables:
var0( 0 ),
var1( 0 ),
var2( 0 ),
var3( 0 ),
var4( 0 ),
var5( 0 ) ;



var0 = Cuadrado( Volty ) ;
var1 = SquareRoot( YearsLeft ) ;

var2 = ( -Rate + MyGamma * Carry + .5 * MyGamma * ( MyGamma - 1 ) * var0 )
* YearsLeft ;
var3 = -( Log( AssetPr / MyH ) + ( Carry + ( MyGamma - .5 ) * var0 )
* YearsLeft ) / ( Volty * var1 ) ;
var4 = 2 * Carry / var0 + 2 * MyGamma - 1 ;
var5 = var3 - 2 * Log( TriggerPr / AssetPr ) / ( Volty * var1 ) ;
Valor44 = ExpValue( var2 ) * Power( AssetPr, MyGamma )
* ( NormSCDensity( var3 ) - Power( TriggerPr / AssetPr, var4 )
* NormSCDensity( var5 ) ) ;
 

O???? Así que.

using tsdata.trading ;
using tsdata.marketdata ;
using elsystem ;

Input: string iAccount1("SIM587052F" ),
string iSymbol1("ESH11" ),
string iSymbol2("NQH11" ),
Length(20),NumStdDev(2),
ProfitTarget$(20),
StopLoss$(20);

vars: order ES_order1(NULL),
order ES_order2(NULL),
longentrycond(false),shortentrycond(false),
close1(0),close2(0),
RelStr(0),bandup(0),banddw(0),RelStrMovAvg(0),
color(0),mp(0),OpenProfit(0),text_("");

once
begin
PSP1.Load=False;
PSP1.Interval = DataInterval.FromCurrentSymbolData( BarType, BarInterval ) ;
PSP1.Range.FirstDate = DateTime.FromELDateAndTime( Date, Time ) ;
PSP1.Load = true ;
PSP2.Load=False;
PSP2.Interval = DataInterval.FromCurrentSymbolData( BarType, BarInterval ) ;
PSP2.Range.FirstDate = DateTime.FromELDateAndTime( Date, Time ) ;
PSP2.Load = true ;
end;


Once Begin
myorder1.Symbol = isymbol1;
myorder1.SymbolType = tsdata.common.SecurityType.future;
myorder1.Account = iaccount1;
myorder1.Type = tsdata.trading.OrderType.market;
myorder1.Duration = "day";
myorder1.LimitPrice = 0.000000;
myorder1.LimitPriceStyle = tsdata.trading.PriceStyle.none;
myorder1.LimitPriceOffset = 0;
myorder1.StopPrice = 0.000000;
myorder1.StopPriceStyle = tsdata.trading.PriceStyle.none;
myorder1.StopPriceOffset = 0;


myorder2.Symbol = isymbol2;
myorder2.SymbolType = tsdata.common.SecurityType.future;
myorder2.Account = iaccount1;
myorder2.Type = tsdata.trading.OrderType.market;
myorder2.Duration = "day";
myorder2.LimitPrice = 0.000000;
myorder2.LimitPriceStyle = tsdata.trading.PriceStyle.none;
myorder2.LimitPriceOffset = 0;
myorder2.StopPrice = 0.000000;
myorder2.StopPriceStyle = tsdata.trading.PriceStyle.none;
myorder2.StopPriceOffset = 0;
end;


//obtener datos de priceseriesprovider, calcular RelativeStrength e Indicadores
close1=PSP1.close[0];
close2=PSP2.close[0];
if close2<>0 then RelStr = close1/close2;
RelStrMovAvg = average(RelStr,length);
bandUp=BollingerBand(RelStr,length, NumStddev);
bandDw=BollingerBand(RelStr,length,-NumStddev);

LongEntryCond = RelStr crosses below banddw;
ShortEntryCond = RelStr cruza por encima de bandup;

mp= Getpositionquantity(iSymbol1,iAccount1);
OpenProfit = getpositionopenpl(iSymbol1,iAccount1)+Getpositionopenpl(iSymbol2,iaccount1);

If LastBarOnChart and barstatus(1)=2 then begin

if mp=0 and longentrycond then begin
myorder1.Cantidad = 1;
myorder2.Quantity = 1;
myOrder1.Acción = tsdata.trading.OrderAction.buy;
MyOrder2.Action = tsdata.trading.OrderAction.sell;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value1=text_new(date,time,low, "Entry Long");
end;

if mp=0 and shortentrycond then begin
myorder1.Quantity = 1;
myorder2.Quantity = 1;
MyOrder1.Acción = tsdata.trading.OrderAction.sell;
MyOrder2.Action = tsdata.trading.OrderAction.buy;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value2=text_new(date,time,high, "Entry Short");
end;

if mp=1 and shortentrycond then begin
myorder1.Quantity = 2;
myorder2.Quantity = 2;
MyOrder1.Acción = tsdata.trading.OrderAction.sell;
MyOrder2.Action = tsdata.trading.OrderAction.buy;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value3=text_new(date,time,high, "Short Reverse");
end;

if mp=-1 and longentrycond then begin
myorder1.Quantity = 2;
myorder2.Quantity = 2;
MyOrder1.Acción = tsdata.trading.OrderAction.buy;
MyOrder2.Action = tsdata.trading.OrderAction.sell;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value4=text_new(date,time,low, "Long Reverse");
end;

end;

//Profittar % StopLoss Any tick
if mp=1 and OpenProfit> ProfitTarget$ then begin
myorder1.Cantidad = 1;
myorder2.Quantity = 1;
myOrder1.Action = tsdata.trading.OrderAction.sell;
myOrder2.Action = tsdata.trading.OrderAction.buy;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value5=text_new(date,time,close, "TargetLong");
end;

if mp=-1 and OpenProfit> ProfitTarget$ then begin
myorder1.Cantidad = 1;
myorder2.Quantity = 1;
myOrder1.Action = tsdata.trading.OrderAction.buy;
myOrder2.Action = tsdata.trading.OrderAction.sell;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value6=text_new(date,time,close, "TargetShort");
end;


if mp=1 and OpenProfit<-StopLoss$ then begin
myorder1.Cantidad = 1;
myorder2.Quantity = 1;
myOrder1.Action = tsdata.trading.OrderAction.sell;
myOrder2.Action = tsdata.trading.OrderAction.buy;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value5=text_new(date,time,close, "StopLong");
end;

if mp=-1 and OpenProfit<-StopLoss$ then begin
myorder1.Cantidad = 1;
myorder2.Quantity = 1;
myOrder1.Action = tsdata.trading.OrderAction.buy;
myOrder2.Action = tsdata.trading.OrderAction.sell;
ES_order1 = MyOrder1.Send();
ES_order2 = MyOrder2.Send();
value6=text_new(date,time,close, "StopShort");
end;

 

No hay reacción. Debe haberle gustado, el juego de ruedas...

//----

Como probablemente ya se haya dado cuenta... No voy a publicar ningún super-secreto aquí. ¡Pero! ¡Si hasta eso! ¡Asombroso para ti! Sin palabras. ¿Empezamos de nuevo? Para aquellos que se perdieron mis conferencias...

¿O? Terminemos por fin. ¿Así?

 

Veo que mucha gente está empezando a ponerse un poco cliffy últimamente.

Me pregunto qué tiene que ver eso.

 

//---

Buena pregunta.

Tiene todo que ver con el comercio de la manzana. Si compramos manzanas y las pagamos con plátanos. Entonces, naturalmente, necesitaríamos algunos cálculos. Ese es exactamente el cálculo que presenté.

 

/// Oh, lo tienes muy mal. En un foro serio, habrías empezado a probar los códigos presentados y estarías haciendo preguntas. Definitivamente tienes una fijación con los juegos de ruedas. Y no te moverás.

 

///--------------------------------------

Se trata de mi increíblemente baja autoestima. Y probablemente no podré lograr nada en esta vida por mi cuenta.

 

//---

Mientras investigaba a uno de los proveedores de datos, no voy a entrar en detalles ni a engañaros sobre el porqué, lo hice. Después de un mes, desconectado. Como no estaba apostando, en una cuenta de práctica. Me enfadé e hice una, en UERUSD . Comprado en euros, tal vez hace una semana, vendido 4 días después. Vendida porque gané 400 libras. No hice nada. No estaba mirando el tipo de cambio en ese momento. Y si digo que la tendencia ha cambiado. Y no tienes que pensar, sólo comprar?????? Por favor, no te tomes mis bromas en serio, o tu cabeza estará en problemas.

 

///-------

¡Sí! Me gustaría advertir a los agentes con muchos apodos. No me voy a mover a otro hilo. ¡¡¡¡Bueno, me da pereza todo esto!!!!

O tal vez es más simple, Marilyn Monroe, me gusta??????

http://www.gotovim.ru/recepts/salad/kalmary/