Ha iniziato a imparare a lavorare con i file. Mi sono imbattuto nel termine maniglia. La domanda è sorta dopo aver scritto il codice:
Dopo aver aperto il primo file news.csv, il programma imposta la variabile filehandle a 1. Successivamente, il programma ha aperto il secondo file news150901.csv e ha impostato la variabile filehandle a 2. Si scopre che il programma è ora lasciato con un valore di handle solo dall'apertura del secondo file. In altre parole, ho ucciso il valore dell'handle del primo file aperto. Cioè posso solo accedere ai dati/contenuti e chiudere il secondo file? Usare una variabile per memorizzare l'handle del file aperto è un errore? È necessario creare una variabile per l'handle per ogni file da aprire?
Quando si apre un file, si ottiene un "codice di accesso" ad esso - un handle. Finché non l'avete chiuso, potete lavorare con il file attraverso la sua maniglia, indipendentemente dal fatto che gli altri file siano aperti o meno.
Ho bisogno di uno script per una ricerca su Excel. Descrizione. Per 30 giorni dalle 8.00 alle 12.00 ogni giorno per stampare in file csv stampa apertura e prezzo di chiusura delle candele in questo intervallo di tempo.Periodo - su cui l'indicatore messo ma non più di un'ora.Indicatore stesso non dovrebbe visualizzare nulla e salvare in buffer.
Come rendere i cicli corretti?
externint DayMax =30; //количество дней для печатиexternint DayStart =1; //начинаем с первого бараexternint HourStart =10; //время старта внутри дняexternint HourEnd =12; //время конца внутри дня//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
//---int per=Period();
if(per>60)return; //если период больше часа , прекращаем работу скриптаdouble c_o=0,ABS_o_c=0;
for(int d=DayStart;d<=DayMax;d++)//перебираем дни от DayStart до DayMax, т.е с вчерашнего до 30
{
for(int h=0;h<60/per*24;h++) //перебираем бары с нолевого до последнего в сутках учитывая ТФ
{
if(Time[h]>HourStart && Time[h]<HourEnd)//проверка промежутка времени
{
//данные для печати и печать
c_o=(Close[h]-Open[h])*Point;
ABS_o_c=MathAbs(c_o);
f_PrintToFile(DayOfWeek(),TimeToString(TimeCurrent(),TIME_DATE|TIME_MINUTES),Open[h],Close[h],c_o,ABS_o_c);
Print(DayOfWeek(),TimeToString(TimeCurrent(),TIME_DATE|TIME_MINUTES),Open[h],Close[h],c_o,ABS_o_c);
}
}
}
}
//+------------------------------------------------------------------+// 1. В файл //+------------------------------------------------------------------+void f_PrintToFile(int f_DayOfWeek=0,
string f_TimeCurrent="",
double f_Open=0,
double f_Close=0,
double f_c_o=0,
double f_ABS_o_c=0)
{
string fileName=StringConcatenate(Symbol()," M",Period()," Tyrimas");
string FileType=".csv";
int handle;
handle=FileOpen(fileName+FileType,FILE_WRITE|FILE_READ,";");
if(handle!=INVALID_HANDLE)
{
FileSeek(handle,0,SEEK_END);
FileWrite(handle,f_DayOfWeek,f_TimeCurrent,f_Open,f_Close,f_c_o,f_ABS_o_c);
FileClose(handle);
}
}
Ho dei dubbi sulla linea, quindi forse il ciclo non capisce l'inizio del giorno, ma funziona da zero bar.
Aiuta un programmatore principiante a scrivere uno script per cancellare gli ordini in sospeso. Tutti gli ordini di acquisto pendenti devono essere cancellati quando non ci sono posizioni di mercato e nessun ordine di vendita pendente.
Ha iniziato a imparare a lavorare con i file. Mi sono imbattuto nel termine maniglia. La domanda è sorta dopo aver scritto il codice:
Dopo aver aperto il primo file news.csv, il programma imposta la variabile filehandle a 1. Successivamente, il programma ha aperto il secondo file news150901.csv e ha impostato la variabile filehandle a 2. Si scopre che il programma è ora lasciato con un valore di handle solo dall'apertura del secondo file. In altre parole, ho ucciso il valore dell'handle del primo file aperto. Cioè posso solo accedere ai dati/contenuti e chiudere il secondo file? Usare una variabile per memorizzare l'handle del file aperto è un errore? È necessario creare una variabile per l'handle per ogni file da aprire?
Quando si apre un file, si ottiene un "codice di accesso" ad esso - un handle. Finché non l'avete chiuso, potete lavorare con il file attraverso la sua maniglia, indipendentemente dal fatto che gli altri file siano aperti o meno.
P.S. Non dimenticate di chiudere i file (non sono chiusi nell'esempio).
Ho bisogno di uno script per una ricerca su Excel.
Descrizione.
Per 30 giorni dalle 8.00 alle 12.00 ogni giorno per stampare in file csv stampa apertura e prezzo di chiusura delle candele in questo intervallo di tempo.Periodo - su cui l'indicatore messo ma non più di un'ora.Indicatore stesso non dovrebbe visualizzare nulla e salvare in buffer.
Come rendere i cicli corretti?
Ho dei dubbi sulla linea, quindi forse il ciclo non capisce l'inizio del giorno, ma funziona da zero bar.
Aiutami.
Potete dirmi per favore come cancellare un oggetto da un grafico dei prezzi da un indicatore installato in una finestra del grafico?
La finestra del grafico ha sempre un indice di 0.
Mi scuso per aver ingombrato tutta la pagina.
È difficile allegare il codice correttamente. C'è un pulsante speciale SRC nell'editor
non è riuscito a trovarlo ((
Davanti alla videocamera SRC per inserire il codice!