[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 453
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Buon pomeriggio!
Se un ordine pendente è attivato da uno script, come posso staccare questo script dalla finestra dello strumento?
Grazie in anticipo.
НЕТ
Скрипт при исполнении делает файл с историей в папку ексерт\филес\ имя файла (это номер счета)
Все очень просто скрипт на 3 терминалах исполняется скажем в 6 утра автоматомЗначит нам не надо открывать терминалы - отрываем базу и новые данные уже в ней подхвачены готовые к анализу (это уже реализовано)
% деятельности с посчитанными свопами, сводными таблицами и графиками и т.д.
Nessuno script può aprire il terminale!
Quindi, se volete che funzioni, deve essere su un terminale aperto e connesso alla rete. Verrà eseguito al tempo richiesto e registrerà i dati. Ma i terminali devono essere sempre accesi.
Добрый день!
Как сделать, если сработал отложенный скриптом ордер, чтобы этот скрипт отсоединить от окна инструмента?
Заранее благодарен.
lo script viene eseguito una volta sul grafico e non richiede una disconnessione manuale.
скрипт выполняется на графике один раз и не требует ручного отсоединения.
Purtroppo, se non è scollegato dalla finestra, quando si chiude l'ordine precedente si apre l'ordine successivo.
Ecco il suo codice
Sposta l'ordine pendente su un cambiamento di prezzo
//--------------------------------------------------------------------
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, // Prezzo soglia, dopo che è passato
// consideriamo la vendita (abs)
lmin, // Lo stesso per Buy
Lot;
int Count=0;
int total=0;
int Ticket=0; // variabile globale.
//--------------------------------------------------------------------
int init() // Special init()
{
int total=OrdersTotal(); // solo ordini aperti
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); // Request Bid value
double ask =MarketInfo(Symbol(),MODE_ASK); // Request Ask value
double min =MarketInfo(Symbol(),MODE_ASK); // Request Ask value
double point =MarketInfo(Symbol(),MODE_POINT)//Query Point
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); // Messaggio di errore
// Alert (Symbol()," ",OP_BUYSTOP," ",0.01," ",ask+10*Point," ",3," ",ask-35*Point," ",ask+35*Point);
Alert (GetLastError());
}
return; // Exit init()
}
//--------------------------------------------------------------------
int start() // Speciale. function start()
{
if(min>Bid) min=Bid;
{ // Conta il prezzo minimo
int total=OrdersTotal(); // solo ordini aperti
string Symbol1=Symbol();
for(int pos=0;pos<total;pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==false) continue;
{
if(OrderSymbol()==Symbol())
{
Alert("Ordine #", OrderTicket(), " in ", OrderSymbol());
Alert (min);
OrderModify(OrderTicket(),min+OTSTUP_BUY*Point,min-1*Point,min+TakeProfit*Point,0);//Modifica
Alert (GetLastError());
Alert(Symbol(), "",OrderTicket()), OrderTicket()," ",min+OTSTUP_BUY*Point," ",min-1*Point," ",min+TakeProfit*Point," ",0);
}
}
}
}
return; // Exit init()
}
//--------------------------------------------------------------------
int deinit() // Speciale. f-iia deinit()
{
// Alert ("Deinit() f-iia triggered on unloading"); // Messaggio
return; // Exit deinit()
}
//--------------------------------------------------------------------
stringa iii[];
iii[0] = "1";
iii[1] = "2";
iii[2] = "3";
MessageBox(iii[0]);
MessageBox(iii[1]);
MessageBox(iii[2]);
emette il numero 3 tre volte! invece del corretto 1, 2, 3.... WTF?
Grazie!
догадываюсьчто проблема в том что я не указал кол-во элементов в массиве. а что делать если кол-во элементов изначально неизвесно и массив заполняется в цикле? (в моём случае при чтении из файла)
ArrayResize