Избранное трейдера Fedor Bobkov



После бурного роста Ripple (XRP) меня очень часто стали спрашивать — «Где купить и как хранить Ripple (XRP) ?»
(Примечательно, что вопросы стали задавать не до роста, а после него. Знакомая картина, да?)
Я Рипплом не торговал и поэтому все мои следующие высказывания — будут мнением диванного теоретика, имейте это ввиду.
Хранение Риппла
Официального локального кошелька для Риппла нет.
Есть неофициальный.
rippex.net/carteira-ripple.php#/
И есть аппаратный.
LEDGER NANO S: goo.gl/i4XNom
И есть онлайн кошелек.
Хранение на онлайн кошельке gatehub менее безопасно, чем двумя другими способами.
Для операций на этом кошельке нужно зарезервировать 20 рипплов.
Всё изложенное мной ниже — основано на моём личном опыте и по мере возможности применяется мной на практике.
Некоторые рекомендации покажутся вам параноидальными и\или противоречащими моим недавним декларациям.
Хочу пояснить, что эта статья имеет очень специальное назначение и является ориентиром, к которому желательно максимально приблизиться.
Сам я пока ещё весьма далёк от чёткого выполнения всех пунктов этой статьи.
Эта удалённость возникла изза недостатка знаний и изза моих заблуждений, которые сопутствовали мне во время моего продвижения в крипто-мире.
Недавно я осознал, что надо двигаться в направлении максимальной децентрализованности.
Выложил свою экспериментальную программку OptimalF, может кому пригодится. Простенькая, но позволяет сделать полезные выводы для реальной торговли:
1. Важны не вероятности прибыли/убытка, а их матожидание.
2. Торговать с нулевым (а тем более с отрицательным) матожиданием — нельзя.
3. При торговле с положительным матожиданием — лучше не превышать оптимальную долю счета.
Выводы, наверное, и так очевидные. Просто в программе можно визуально все это увидеть.

Описание и сама программа — здесь.
Settings=
{
Name = "Piton",
N = 100,
legend = "price2",
line =
{
{ Name = "Sint",
Color = RGB(0, 132, 0),
Type = TYPE_LINE,
Width = 1
}
}
}
function Init()
return 1
end
Candles = {};
function OnCalculate(index)
local numCandles = getNumCandles(Settings.legend);
if index <= Settings.N or numCandles <= Settings.N then
return nil;
end
Candles, n, _ = getCandlesByIndex(Settings.legend, 0, index - Settings.N, Settings.N);
if n ~= Settings.N then
return nil;
end
-- Предварительный расчет
sum1, sum2, sum3 = advancePaynemt(index);
-- расчет коэффициента корреляции Пирсона
r = sum3/math.sqrt(sum1*sum2);
return r;
end
-- Предварительный расчет
----------------------------------------
function advancePaynemt(index)
local sum1 = 0;
local sum2 = 0;
local sum3 = 0;
local j = 0;
-- Вычислить среднее арифметическое
for i=index - Settings.N + 1, index, 1 do
sum1 = sum1 + C(i);
sum2 = sum2 + Candles[j].close;
j = j + 1;
end
aver1 = sum1/Settings.N;
aver2 = sum2/Settings.N;
-- Вычислить сумму квадратов отклонений
sum1 = 0;
sum2 = 0;
j = 0;
for i=index - Settings.N+1, index, 1 do
sum1 = sum1 + math.pow(C(i) - aver1, 2);
sum2 = sum2 + math.pow(Candles[j].close - aver2, 2);
j = j + 1;
end
-- Вычислить сумму произведений разности
j=0;
for i=index - Settings.N+1, index, 1 do
sum3 = sum3 + (aver1 - C(i))*(aver2 - Candles[j].close);
j = j + 1;
end
return sum1, sum2, sum3;
end
Как запустить и настроить: