Избранное трейдера klimvv
Тимофей тут затронул тему о том, что идея безделья ущербна и приходит от того, что зарабатываешь на жизнь не тем, что нравится. Что-то мне захотелось вспомнить былые времена, когда я активно пописывал на смарт-лаб и даже какой-то орден в профиль получил :) Сейчас уже почти два года прошло, как я окончательно ушёл с наёмной работы и занимаюсь физкультурно-оздоровительной деятельностью, йогой, медитацией ну и т. д. Далее собираюсь Вам поведать, как я дошёл до жизни такой и почему мне опостылела финансовая деятельность.
Я занимался профессиональным управлением активами 10 лет с августа 2007 года. Как сейчас помню, пришёл только после окончания МГУ и сразу меня посадили помогать управлять паевым фондом, в котором было около 150 млн рублей. Зарплата 25 000 рублей, а я совершаю сделки и иногда сам принимаю решения о том, что купить-продать на суммы, превышающие мою зарплату в 500 или 1 000 раз. Тогда для меня это было шоком. Ещё параллельно я участвовал в создании котировок по некоторым паям закрытых фондов, в общем, окунулся в финансовую сферу по полной. После института была куча иллюзий, что миллионы, яхты и спорткары уже близко. До кризиса 2008 года оставалось совсем немного...
Немного порассуждаю про уровень абстракции в стратегиях и про ООП как инструмент для этого.
Да, чтобы войти на пересечении скользящих и выйти по трейлингу на основе параболика ООП нафиг не нужен. Но я мыслю более реальными, «физическими» категориям. В смысле более живыми. Импульс, консолидация, да тот же тренд. Да, теоретически я могу использовать стандартные индикаторы, но у меня всегда индикатор – всего лишь отражение какого-то физического процесса. Но об этом я частенько упоминал, сейчас не совсем об этом.
Когда ты дата-майнишь, рисечишь идеи для стратегий тебе позарез нужно конкурентное преимущество. Перебирать и комбинировать сигналы разных индикаторов – это давно не работает. Конкурентные преимущества бывают разные: преимущества могут быть у бога математики или физики, у бога статистики и аналогичных наук, преимущества могут быть у лютых технарей, которые могут покорить космические скорости вычислений и исполнения.
Сейчас попробую выделить ещё один вид преимущества, ну или вернее ниша, в которой, как мне кажется, пасется не так много народу. Я говорю про нишу высокоуровневых абстракций.
Что я имею в виду, зачем это надо, при чем здесь ООП.
В первой части мы рассмотрели «теорему о средней волатильности» где, обозначили такое свойство:волатильности могут на разных таймфреймах значительно отличаться друг от друга. Но они всегда будут со временем сходится к одному значению.
Вот, на этом свойстве и будет построен индикатор. Для индикатора нам нужны волатильности на различных таймфреймах. В качестве индикатора волатильности берутся два стандартных индикатора, но которые по сущности показывают одно и тоже.
Price Channel (PC) или ценовой канал. Индикатор представляет из себя две линии, которые ограничивают канал колебаний цены. Верхняя граница канала обозначает уровень локального максимума за прошедшие N периодов, а нижняя граница – уровень локального минимума за тот же промежуток времени. Таким образом, цена ограничивается максимальными точками колебаний – экстремумами за N периодов.
Учим C# зная basic
Цель данной темы: разместить в интернет программы
по каким возможно быстро выучить C# зная basic
Никому никогда ничего не рекомендую и всегда пишу только про себя
Программы созданы мной на основе моей главной программы
где запрограммирован мой алгоритм в нескольких вариантах
и теперь программирую на C# сразу без перевода из basic
? Почему C# & basic?
Потому что компилируемые и есть онлайн компиляторы
и компилятор C# включен в Windows 7 Framework
Программы проверены: работают и каждый может проверить
и лично я компилирую и стартую через простейший bat
Квадратное уравнение qb64
' quadratic equation QB64 DAV
INPUT "INPUT A"; A
INPUT "INPUT B"; B
INPUT "INPUT C"; C
D = B ^ 2 - 4 * A * C
IF D < 0 THEN PRINT "D<0 ": END
PRINT "OTBET: "
PRINT "D ="; D
X1 = (-B + SQR(D)) / (2 * A)
X2 = (-B - SQR(D)) / (2 * A)
PRINT "X1 ="; X1
PRINT "X2 ="; X2
END
Квадратное уравнение C#// quadratic equation C# DAV
using System;
using System.Text;
using System.IO;
namespace DAV
{
class Program
{
static void Main(string[] args)
{
Console.Write("INPUT A: ");
long a = Convert.ToInt32(Console.ReadLine());
Console.Write("INPUT B: ");
long b = Convert.ToInt32(Console.ReadLine());
Console.Write("INPUT C: ");
long c = Convert.ToInt32(Console.ReadLine());
long d = (b * b - 4 * a * c);
Console.WriteLine("OTBET: ");
Console.Write("D = ");
Console.WriteLine(d);
var x1 = (-b + Math.Sqrt(d)) / (2 * a);
var x2 = (-b - Math.Sqrt(d)) / (2 * a);
Console.Write("X1 = ");
Console.WriteLine(x1);
Console.Write("X2 = ");
Console.WriteLine(x2);
Console.ReadKey();
}
}
}
'Угадай число
RANDOMIZE TIMER
s = INT(RND * 100)
t = 0
10 PRINT: t = t + 1:
INPUT "your variant"; a
IF a < s THEN PRINT "need MORE": GOTO 10
IF a > s THEN PRINT "need less": GOTO 10
PRINT "win by"; t; "steps"
END
//Угадай число
using System;
using System.Text;
namespace DAV
{
class Program
{
static void Main(string[] args)
{
Random rand = new Random();
int s = rand.Next(100);
int t = 0;
dav:
Console.WriteLine();
t++;
Console.Write("your variant ");
string d = Console.ReadLine();
int a = Convert.ToInt32(d);
if(a > s)
{
Console.WriteLine("need less");
goto dav;
}
else if(a < s)
{
Console.WriteLine("need MORE");
goto dav;
}
Console.Write("win by ");
Console.Write(t);
Console.Write(" steps");
Console.ReadKey();
}
}
}
'Угадывает 1 из 1000000
RANDOMIZE TIMER
t=0:h1=0:h2=10^6
c=INT(RND*h2) 'comp
h=INT(RND*h2) 'human
10 t=t+1: PRINT t; c; h;
IF h<c THEN PRINT "MORE": a=h: h=INT((h+h2)/2): h1=a: GOTO 10
IF h>c THEN PRINT "less": a=h: h=INT((h1+h)/2): h2=a: GOTO 10
PRINT "win by "; t; " steps"
END