Общие вопросы по разработке > Где почитать про язык программирования?

Общие вопросы по разработке в Альфа-Директ 4. Обсуждение разработки пользовательских индикаторов, стратегий.
katekenkis

Где почитать про язык программирования?

Непрочитанное сообщение katekenkis » 06 мар 2016, 15:20

Добрый день!

Подскажите пожалуйста где можно почитать про язык программирования на котором пишутся индикаторы и роботы. Желательно где всё подробно расписано и разжевано для начинающих.

Спасибо.

Аватара пользователя
evge
Администратор
Сообщения: 1807
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 361 раз
Контактная информация:

Re: где почитать про язык программирования?

Непрочитанное сообщение evge » 06 мар 2016, 15:32

Изучить основы C

например вот тут

Конечно скриптовый язык ограничен в АД4, поэтому далее изучить:

В разделе программное обеспечение сайта Альфа-Директ

Документы:

Скрипты индикаторов и стратегий в Альфа-Директ 4.0 ,
Библиотека пользовательских индикаторов Альфа-Директ 4.0

или здесь на форуме в разделе Библиотека пользовательских индикаторов и Пользовательские индикаторы

На примерах очень хорошо учиться, но сначала основы. Переменные, массивы, условия, циклы...

и документ Стратегии и роботы в Альфа-Директ 4.0
никогда такого не было и вот опять

Геннадий
Сообщения: 29
Зарегистрирован: 06 мар 2016, 02:11
Поблагодарили: 2 раза

Re: где почитать про язык программирования?

Непрочитанное сообщение Геннадий » 11 мар 2016, 15:53

А где за хороший пост лайки ставить? :)
А еще азы С# тут (для школьников, карманный справочник и введение в программирование C# 2.0)
https://www.dropbox.com/sh/q9ar8xtyjofg ... MJYQa?dl=0

keeper
Сообщения: 10
Зарегистрирован: 11 мар 2016, 20:29

Re: где почитать про язык программирования?

Непрочитанное сообщение keeper » 12 мар 2016, 17:40

Редактор кода Стратегий:

Код: Выделить всё

function OnUpdate()
{
   var a = 0.0;
      if ( условие )
         {
            EnterLong();
            a = ATR(Input1, P3)[0];
         }


как значение переменной "а" передать в следующее правило if?
Так как происходит новый прогон и объявленная переменная обнуляется.

Аватара пользователя
evge
Администратор
Сообщения: 1807
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 361 раз
Контактная информация:

Re: где почитать про язык программирования?

Непрочитанное сообщение evge » 15 мар 2016, 13:49

Геннадий писал(а):как значение переменной "а" передать в следующее правило if?


заведите глобальную переменную в инициализации и меняйте её.

Код: Выделить всё

function Initialize()
{
..
AddGlobalVariable("a", Types.Double, 0.0);
...
}

function OnUpdate()
{

if (a ...) ... a = ...

}
никогда такого не было и вот опять

keeper
Сообщения: 10
Зарегистрирован: 11 мар 2016, 20:29

Re: где почитать про язык программирования?

Непрочитанное сообщение keeper » 15 мар 2016, 20:17

Спасибо.
Смещение [x] на один бар назад как правильно обозначить:
[-1] или [1]?
В редакторе кода и в конфигураторе одинаково?

Аватара пользователя
evge
Администратор
Сообщения: 1807
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 361 раз
Контактная информация:

Re: где почитать про язык программирования?

Непрочитанное сообщение evge » 15 мар 2016, 22:31

keeper писал(а):[-1] или [1]?
В редакторе кода и в конфигураторе одинаково?


Работает одинаково.

Я привык без минуса указывать. Хотя поначалу писал в коде с минусом. Затем бросил это дело. В конструкторе не могу сказать точно. т.к. всегда пишу без минуса.
никогда такого не было и вот опять

Avialr
Сообщения: 34
Зарегистрирован: 05 фев 2016, 18:15

Re: где почитать про язык программирования?

Непрочитанное сообщение Avialr » 13 июн 2016, 12:39

Геннадий писал(а):А где за хороший пост лайки ставить? :)
А еще азы С# тут (для школьников, карманный справочник и введение в программирование C# 2.0)
https://www.dropbox.com/sh/q9ar8xtyjofg ... MJYQa?dl=0


Ссылка больше не работает на данный справочник - не обновите?

Valdemar
Сообщения: 2
Зарегистрирован: 17 июн 2020, 15:11

Re: где почитать про язык программирования?

Непрочитанное сообщение Valdemar » 18 июн 2020, 17:49

evge писал(а):
Геннадий писал(а):как значение переменной "а" передать в следующее правило if?


заведите глобальную переменную в инициализации и меняйте её.

Код: Выделить всё

function Initialize()
{
..
AddGlobalVariable("a", Types.Double, 0.0);
...
}

function OnUpdate()
{

if (a ...) ... a = ...

}


Евгений, добрый день!
Прошу Вашей помощи.
Как на основе полученного значения (назовём его CSV) рассчитать его максимум(CSVmax26) и минимум(CSVmin26) за период равный 26, а потом произвести вычисления по формуле CSV1_2 = (CSV - CSVmin26)/(CSVmax26-CSVmin26)*100 и вычислить среднюю равную 14. С расчетом CSV я смог справиться, а дальше не получается.

Код: Выделить всё

function Initialize()
{
IndicatorName = "CSV1_2";
AddInput("Input", Inputs.Candle);
PriceStudy = false;   
AddParameter("Period1", 26);
AddSeries("CSV1_2", DrawAs.Line, Color.Blue);
AddGlobalVariable("CSV", Types.Double, 0.0);
AddLevel(20 , Color.Red, "CSV1_2");
AddLevel(40 , Color.Gray, "CSV1_2");   
}

function Evaluate()
{
// Alfadirect 2017. OX    

if ( CurrentIndex > 0)
     if (Input.Close[0] > Input.Close[-3])
     CSV = Input.OpenInterest[-3] + Input.OpenInterest[-2] + Input.OpenInterest[-1] + Input.OpenInterest[0];
   else
     CSV = Input.OpenInterest[-3] - Input.OpenInterest[-2] - Input.OpenInterest[-1] - Input.OpenInterest[0];
}


//----------- Код, оказавшийся вне методов -----------//
//function OnUpdate()
//{
//if (CSV >= Period)
//   var max26 = eMaxCSV
//   var min26 = eMinCSV
//   if ( CurrentIndex >= Period )
//   {
//        int i = 0;
//        for (i = 1; i < Period; i++)
//        max26 = Math.Max(CSV[i], max26);
//        for (i = 1; i < Period; i++)
//        min26 = Math.Min(CSV[i], min26);
//       
//      CSV1_2 = (CSV - min26)/(max26 - min26)*100;
//   }
//}
//}


Вернуться в «Общие вопросы по разработке»

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot], Google [Bot] и 14 гостей