[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 453
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Bonjour !
Si un ordre en attente est déclenché par un script, comment puis-je détacher ce script de la fenêtre de l'outil ?
Merci d'avance.
НЕТ
Скрипт при исполнении делает файл с историей в папку ексерт\филес\ имя файла (это номер счета)
Все очень просто скрипт на 3 терминалах исполняется скажем в 6 утра автоматомЗначит нам не надо открывать терминалы - отрываем базу и новые данные уже в ней подхвачены готовые к анализу (это уже реализовано)
% деятельности с посчитанными свопами, сводными таблицами и графиками и т.д.
Aucun script ne peut ouvrir le terminal !
Donc, si vous voulez qu'il fonctionne, il doit être sur un terminal ouvert et connecté au réseau. Il fonctionnera au moment voulu et enregistrera les données. Mais les bornes doivent toujours être allumées.
Добрый день!
Как сделать, если сработал отложенный скриптом ордер, чтобы этот скрипт отсоединить от окна инструмента?
Заранее благодарен.
le script est exécuté une fois sur le graphique et ne nécessite pas de déconnexion manuelle.
скрипт выполняется на графике один раз и не требует ручного отсоединения.
Malheureusement, s'il n'est pas déconnecté de la fenêtre, lorsque l'ordre précédent est fermé, il ouvre l'ordre suivant.
Voici son code
Déplacement de l'ordre en attente en cas de changement de prix
//--------------------------------------------------------------------
extern double OTSTUP_BUY = 7 ;
extern double TakeProfit = 100 ;
//extern double BuyStop = 0 ;
//extern double StopLoss = 0 ;
extern double Lots = 0.01 ;
//extern double TrailingStop = 21 ;
double min =100000 ;
double
lmax, // Prix seuil, après qu'il soit passé
// nous considérons la vente (abs)
lmin, // Même chose pour Buy
Lot ;
int Count=0 ;
int total=0 ;
int Ticket=0 ; // Variable globale.
//--------------------------------------------------------------------
int init() // Spécial init()
{
int total=OrdersTotal() ; // uniquement les ordres ouverts
string Symbol1=Symbol() ;
double metka=0 ;
for(int pos=0;pos<total;pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==false) continue ;
{
if(OrderSymbol()==Symbol())
{
metka=1 ;
Alert("Order #", OrderTicket(), " in ", OrderSymbol()) ;
}
else
{
}
}
}
if(metka==0 )
// if(metka==0 && UROVEN>=Ask)
{
double bid =MarketInfo(Symbol(),MODE_BID) ; // Demande de valeur Bid
double ask =MarketInfo(Symbol(),MODE_ASK) ; // Demande de valeur Ask
double min =MarketInfo(Symbol(),MODE_ASK) ; // Demande de valeur Ask
double point =MarketInfo(Symbol(),MODE_POINT)//Point d'interrogation
OrderSend(Symbol(),OP_BUYSTOP,Lots,bid+OTSTUP_BUY*Point,3,bid-1*Point,bid+TakeProfit*Point) ;
int Ticket=OrderTicket() ;
//OrderSend(Symbol(),OP_BUYSTOP,Lots,BuyStop,3,StopLoss,TakeProfit, "Bye Stop 1") ;
Alert (Ticket) ; // Message d'erreur
// Alert (Symbol()," ",OP_BUYSTOP," ",0.01," ",ask+10*Point," ",3," ",ask-35*Point," ",ask+35*Point) ;
Alert (GetLastError()) ;
}
return ; // Quitter init()
}
//--------------------------------------------------------------------
int start() // Spécial. function start()
{
if(min>Bid) min=Bid ;
{ // Compter le prix min
int total=OrdersTotal() ; // uniquement les ordres ouverts
string Symbol1=Symbol() ;
for(int pos=0;pos<total;pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==false) continue ;
{
if(OrderSymbol()==Symbol())
{
Alert("Ordre #", OrderTicket(), " in ", OrderSymbol()) ;
Alert (min) ;
OrderModify(OrderTicket(),min+OTSTUP_BUY*Point,min-1*Point,min+TakeProfit*Point,0);//Modify
Alert (GetLastError()) ;
Alert(Symbol(), "",OrderTicket()), OrderTicket()," ",min+OTSTUP_BUY*Point," ",min-1*Point," ",min+TakeProfit*Point," ",0) ;
}
}
}
}
return ; // Quitter init()
}
//--------------------------------------------------------------------
int deinit() // Spécial. f-iia deinit()
{
// Alerte ("Deinit() f-iia triggered on unloading") ; // Message
return ; // Quitter deinit()
}
//--------------------------------------------------------------------
chaîne de caractères iii[] ;
iii[0] = "1" ;
iii[1] = "2" ;
iii[2] = "3" ;
MessageBox(iii[0]) ;
MessageBox(iii[1]) ;
MessageBox(iii[2]) ;
produit le nombre 3 trois fois ! au lieu des 1, 2, 3.... appropriés WTF ?
Merci !
догадываюсьчто проблема в том что я не указал кол-во элементов в массиве. а что делать если кол-во элементов изначально неизвесно и массив заполняется в цикле? (в моём случае при чтении из файла)
ArrayResize