(IsConnected)

Author: Copyright � 2005, komposter
(IsConnected)
Price Data Components
Series array that contains open time of each bar
Miscellaneous
Uses files from the file systemIt writes information to file
0 Views
0 Downloads
0 Favorites
(IsConnected)
//+------------------------------------------------------------------+
//|                                                (IsConnected).mq4 |
//|                                      Copyright © 2005, komposter |
//|                                      mailto:komposterius@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2005, komposter"
#property link      "mailto:komposterius@mail.ru"

bool 		first					= true;
bool 		Now_IsConnected	= false;
bool 		Pre_IsConnected	= true;
datetime Connect_Start = 0, Connect_Stop = 0;

int init() { start(); return(0); }

int start()
{
	int handle = FileOpen( "_IsConnected.txt", FILE_WRITE | FILE_READ, " " );
	FileSeek( handle, 0, SEEK_END );
	FileWrite( handle, "- - - - - - - - - - - Expert initialized  - - - - - - - - - -" );

	while ( !IsStopped() )
	{
		Pre_IsConnected = Now_IsConnected;
		Now_IsConnected = IsConnected();
		
		if ( first ) { Pre_IsConnected = !Now_IsConnected; }
		
		if ( Now_IsConnected != Pre_IsConnected )
		{
			if ( Now_IsConnected )
			{
				Connect_Start = LocalTime();
				if ( !first )
				{
					FileSeek( handle, -55, SEEK_CUR );
					FileWrite( handle, "- - - OffLine- - -       " + TimeToStr( Connect_Stop, TIME_DATE ) + "       " + TimeToStr( Connect_Stop, TIME_SECONDS ) + " - " + TimeToStr( Connect_Start, TIME_SECONDS ) );
				}
				if ( IsStopped() ) { break; }
				FileWrite( handle, "+ + + OnLine + + +       " + TimeToStr( Connect_Start, TIME_DATE ) + "       " + TimeToStr( Connect_Start, TIME_SECONDS ) + " - " );
			}
			else
			{
				Connect_Stop = LocalTime();
				if ( !first )
				{
					FileSeek( handle, -55, SEEK_CUR );
					FileWrite( handle, "+ + + OnLine + + +       " + TimeToStr( Connect_Start, TIME_DATE ) + "       " + TimeToStr( Connect_Start, TIME_SECONDS ) + " - " + TimeToStr( Connect_Stop, TIME_SECONDS ) );
				}
				if ( IsStopped() ) { break; }
				FileWrite( handle, "- - - OffLine- - -       " + TimeToStr( Connect_Stop, TIME_DATE ) + "       " + TimeToStr( Connect_Stop, TIME_SECONDS ) + " - " );
			}		
		}

		first = false;
		FileFlush( handle );
		Sleep(1000);
	}

	if ( Now_IsConnected )
	{
		FileSeek( handle, -55, SEEK_CUR );
		FileWrite( handle, "+ + + OnLine + + +       " + TimeToStr( Connect_Start, TIME_DATE ) + "       " + TimeToStr( Connect_Start, TIME_SECONDS ) + " - " + TimeToStr( LocalTime(), TIME_SECONDS ) );
	}
	else
	{
		FileSeek( handle, -55, SEEK_CUR );
		FileWrite( handle, "- - - OffLine- - -       " + TimeToStr( Connect_Stop, TIME_DATE ) + "       " + TimeToStr( Connect_Stop, TIME_SECONDS ) + " - " + TimeToStr( LocalTime(), TIME_SECONDS ) );
	}		
	FileWrite( handle, "- - - - - - - - - - - Expert was stoped - - - - - - - - - - -\n" );
	FileClose( handle );
return(0);
}

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---