Избранная статья

Онлайн-курсы от Skillbox

Skillbox — это образовательная платформа. Её создатели считают, что важно дать возможность каждому человеку быть актуальным и востребованным специалистом. Вне зависимости от возраста и географии. Немного о платформе Skillbox Чтобы человек смог стать востребованным специалистом его нужно хорошо обучить. Однако этого может оказаться не достаточно. Ведь специалист считается таковым только тогда, когда он получает возможность реализовать свои навыки на практике. А для… Подробнее »

8. (Анализ) Комбинаторика. Сочетание

Сочетание — это ещё один из ключевых терминов комбинаторики. Определения сочетаний, которые можно встретить в различных книгах, очень сжаты. В случае с перестановками и размещениями ситуация такая же. Поэтому многие путаю все эти понятия, а это вызывает сложности в дальнейшем знакомстве с теорий вероятностей и математической статистикой. Сочетание. Определение Давайте, для начала, вернёмся к определениям перестановки и размещения. А… Подробнее »

7. (Анализ) Комбинаторика. Перестановка

Перестановка — это один из ключевых терминов комбинаторики. Она представляет собой комбинацию из нескольких элементов, которые отличаются друг от друга только порядком следования. Как и размещение, перестановку можно разделить на два вида: Перестановка без повторений. По сути, данный вид перестановки есть частный случай размещения без повторений, когда объём выборки равен количеству всех объектов исходного множества. Количество перестановок без повторений… Подробнее »

6. (Анализ) Комбинаторика. Размещение

В комбинаторике размещением называется расположение «предметов» на некоторых «местах» при условии, что каждое место занято в точности одним предметом и все предметы различны. Если говорить кратко, то размещение – комбинации из n элементов по m (m<n), которые отличаются друг от друга или самими элементами или их порядком.  Условно можно выделить два вида размещений: В прошлой статье я кратко описал, что из себя представляет размещения. Теперь давайте рассмотрим их подробнее. Размещение без повторений Размещение без повторений ( Anm — читается ”а… Подробнее »

5. (Анализ) Комбинаторика. Элементы комбинаторики

При решении задач на классическую вероятность приходится подсчитывать число исходов, благоприятствующих некоторому событию. Задачи такого рода называют комбинаторными, а сам раздел математики, занимающийся такими подсчётами, именуют «Комбинаторика». Иногда под комбинаторикой понимают более обширный раздел дискретной математики. Комбинаторика. Правила комбинаторики Большинство задач по ком решается с помощью двух основных правил: Правило сложения. Пусть есть два множества объектов A = {a1, …, an} и B = {b1, …,… Подробнее »

4. (Анализ) Аксиомы вероятности

Ранее я кратко описал одно из ключевых понятий теории вероятностей — это вероятность события. Теперь мы можем ознакомится с некоторыми свойствами вероятности, каждое из которых мы принимаем в качестве аксиомы. Аксиомы вероятности Что же такое аксиома? Согласно классическому определению Аксио́ма — это исходное положение какой-либо теории, принимаемое в рамках данной теории истинным без требования доказательства и используемое при доказательстве других её положений.… Подробнее »

3. (Анализ) Вероятность события

В конце первой статье я упомянул понятие «Вероятность события«. Как вы помните любое испытание может иметь один или несколько вариантов его исхода. Все они формируют пространство элементарных событий. Допустим нас интересует определённый исход испытания. Так в прошлой статье, я рассматривал понятие «Подмножество пространства элементарных событий». Там подкидывалось три монеты. Необходимо было перечислить все возможные исходы(события) данного эксперимента(испытания). То… Подробнее »

2. (Анализ) Алгебра событий

Алгебра событий — это математическое выражение отношений между простыми (элементарными) или сложными (составными) событиями. Все эти отношения можно свести к следующим видам математических операций: Сложение Произведение Разность Подмножество пространства элементарных событий Прежде чем перейти к рассмотрению вышеуказанных операций, следует разобраться с термином «Подмножество элементарных событий». В статье «1. (Анализ) Событие» было рассмотрено понятие «Пространство элементарных событий». Напомню, что… Подробнее »

1. (Анализ) Событие

В своей повседневной жизни мы часто встречаемся с явлениями, исход которых предсказать очень трудно или же невозможно. Например изменение погоды зависит от множества известных и неизвестных нам факторов. Как они влияют на конечный результат мы сказать не можем. Поэтому прогноз погоды становится похожим на «гадание на кофейной гуще». И так не только с погодой. Но не смотря на… Подробнее »

(MQL) 2.6 Тип объекта. Класс «ETypeCode»

В библиотеке языка «MQL5» имеется класс «CList«. Он является классом динамического списка объектов. В иных языках программирования (например: Java, C#, ) такие списки называют коллекциями. Коллекции чем-то похожи на массивы, но с одним отличием. Массивы это набор однотипных данных, а коллекции могут содержать в себе набор значений как одного, так и различных типов. Главное отличие списка «CList» от… Подробнее »

(MQL) 2.5 Время. Класс «ETime».

Для торгового робота время играет очень важную роль. Благодаря ему мы можем определить момент появления нового бара. Мы можем выставлять заявки с отложенным исполнением в нужный нам момент. Опираясь на время выхода новостей, можно контролировать работу торгового робота или же составить определённую стратегию поведения на рынке. Класс «ETime». Держим время под контролем Потому мы создаём отдельный класс «ETime»,… Подробнее »

(MQL) 2.4 Строки. Манипуляции над ними

В прошлый раз шла речь о расширении проекта торгового фреймворка. В конце этой статьи шла речь о функциях, которые понадобятся для совершения манипуляций над строками. Именно они будут сейчас рассмотрены. Строки. Функции для работы с ними Для начала создаём файл «Prepare.mqh» в папке «Helpers» нашего проекта. К нему подключается файл «Conversion.mqh». #include «Сonversion.mqh» Основные функции для работы со… Подробнее »

(MQL) 2.3 Расширение структуры проекта.

Не смотря на то, что наш проект пока содержит всего два файла, потребовалось его немного расширить. Расширение структуры проекта На данный момент создаваемый нами проект имеет следующий вид: Чем он отличается от первоначальной структуры? Во-первых в папке «Classes» появились новые директории: Allowed Bar Во-вторых в корень проекта были добавлены директории «Defines» и «Structure». В папке «Allowed» будут расположены… Подробнее »

(MQL) 2.2 Преобразование данных. Приведение типа переменной

В прошлой статье, посвящённой преобразованию данных, была рассмотрена целая группа функций. Среди них была шаблонная функция «Convert()». Данная функция выполняет приведение типов переменных. Но для этого ей необходимо передать два аргумента. Однако нам, в процессе разработки фреймворка, может понадобится преобразовать тип уже имеющейся переменной, содержащей некоторые данные. Приведение типа переменной Чтобы это сделать без потери данных, нам потребуется… Подробнее »

(PHP) 1.3 Оформление сообщений об ошибке. Класс «FormatAbstract»

Наверное вы замечали, что при проблемах в работе системы управления сайтом появляются различные сообщения. Зачастую они выводятся одной строкой. Чтобы разобрать её содержание придётся потратить какое-то время. Было бы намного легче читать сообщения, где каждый блок информации отделён от другого. Поэтому в данной статье мы напишем класс (FormatAbstract), который будет отвечать за обработку получаемых сообщений и их оформление… Подробнее »

(MQL) 2.1 Преобразование данных

В прошлой статье я описал некоторые перечисления. По сути это один из видов данных, которые будут активно использоваться нашим фреймворком. В дальнейшем очень часто будет возникать необходимость в преобразовании данных. Поэтому надо уже сейчас создавать необходимый функционал. Речь идёт о функциях-помощниках. Их ещё называют «Хелперы». Шаблонные функции Для начала разберёмся с приведением типов. Это преобразование данных одного типа… Подробнее »

(PHP) 1.2 Уровни ошибок — класс LogLevelsClass

В прошлой статье была представлена полная структура обработчика ошибок. В этой статье мы рассмотрим класс «LogLevelsClass«. Это класс описывает уровни ошибок. Так как этот класс самостоятельный, то он располагается в директории «class» корневой папки компонента ядра «Log». Сам класс определён в следующем пространстве имён: namespace Hydra\Log\Levels; Константы класса «LogLevelsClass». Уровни ошибок В самом классе объявляется ряд констант, один… Подробнее »

(MQL) 1. Перечисления

Перечисляемый тип (сокращённо перечисления, англ. enumeration, enumerated type) —  тип данных, который является набором идентификаторов, играющих ту же роль, что и обычные именованные константы. В основном все перечисления, используемые в проекте, служат своеобразными указателями, которые говорят о том, какие операции необходимо сделать. Прежде чем перейти к описанию перечислений, стоит рассмотреть такие понятия, как «заявка» и «позиция». Позиция и заявка (ордер). В чём отличие?… Подробнее »

(PHP) 1.1 Обработчик ошибок. Интерфейсы

В любой работе случаются ошибки. Можно использовать совершенную технику или же быть специалистом экстра класса, но от ошибок никто не застрахован. Так и с программным кодом. Каким классным программистом вы бы ни были, ошибки в работе кода всё равно могут быть. Их нужно отслеживать и исправлять. Именно поэтому так важно иметь под рукой инструменты обработки ошибок. «Эталонный» обработчик… Подробнее »