Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В общем, если в скрипте поменять так:
// if(MathMod(MathRand(),2)==1)RND+=0.0001;
if( MathRand() > 16383) RND+=0.0001;
else RND-=0.0001;
то всё встает на свои места. Ни какой СЕНСАЦИИ нет и быть не может.
Это, кстати, очень распостраненная ошибка. Вместо того, что бы проверить логику использования ГПСЧ, начинают сразу хаить сам ГПСЧ.
Хотите мериться периодам?. Тот генератор который я использую имеет период в ^19937 - по моему даже названия нет, для такого огромного числа.
Но в данном случае проблема была не в периоде генератора, а в неверном условии скрипта. Ошибка на стыке математики и программирования.
Итак, условия задачи:
Курс инструмента задается следующим образом.
В начальный момент цена равна 1.0000
В каждый новый тик кидается монетка, если орел p = p*1.0001, если решка p = p/1.0001
Спред равен 2 пипсам. Трейдер обладает суммой в 100000 долларов. Максимальное плечо 1:100
Доказать, что в данной ситуации для трейдера не существует прибыльной стратегии.
Условия задачи взяты у Elita в его ветке задачи для трейдера на форуме http://club.investo.ru/viewtopic.php?f=29&t=126082
Задача плохо сформулирована, оттого имеет массу толкований "правильного" ответа.
1. нужно точно определеить что такое "прибыльная стратегия"
2. нужно точно определить, какая у нас монетка.
3. что такое "2 пипса" исходя из размерности чисел в задачи.
4. и т.д.
Сколько вони из неоткуда. Вечерком я накидаю тест определения предела генератора МТ, и я уверен он будет гораздо больше 200 000 тысяч.
// if(MathMod(MathRand(),2)==1)RND+=0.0001;
if( MathRand() > 16367) RND+=0.0001;
else RND-=0.0001;
То что вы показали на рисунке вообще похоже на накопление положительных значений. СБ тут и не пахнет.
Я просто устал слушать одно и то же от любителей СБ. Вот дословно наш диалог:
- система будет постоянно находится в узком коридоре значений.
- Bazil, вы совершенно не понимаете суть случайного блуждания.
- Значение всегда будут стремится к 1.
- отклонение от начальной точки пропорционально квадрату времени
пускай при бросании 10 000 раз отклонение было 12 пунктов
10 миллионов раз в 1000 раз больше, корень будет 32
12*32 сами посчитайте
- Bazil, не позорьтесь и внимательно слушайте RedRat'а
никакого коридора здесь нет - увеличьте число бросаний в 2-8 раз и все ваши коридоры будут пробиты
- Оки, сделаю как вы говорите увеличу число бросаний в 100 раз!
Спустя некоторое время...
- Увеличил картинка получилась еще интересней
- Это все потому что Ваш генератор полное гавно! Вот я прогу сейчас наваляю и покажу вам картинку какая она должна быть
Спустя некоторое время...
- Странно! У меня те же самые результаты! Просто у меня оказывается генератор тоже гавно! Зато если взять 100 000 тиков картинка становится похожа на СБ! (Вот это логика!)
- Дык выже говорили что тиков нужно больше!
- Нужен "хороший" генератор и "специальная монета". Проверка на чет нечет не подходит . (Будто бы есть какя-то разница между одной вероятностью в 50% и другой "правильной" вероятностью в 50%).
2. нужно точно определить, какая у нас монетка.
Вот это просто бесподобно! Я так понял это скрытая подоплека на то, что монетка должна быть как минимум с измененным центром тяжести. Судя по рисунку который вы показали, монетка явно старается приземлится орлом.
Судя по этим Вашим словам - Вы вообще плохо понимаете о чем идет речь. Эта монетка стремится приземлиться орлом так же часто как и решкой. Тем не менее график именно вот такой. Угадайте почему.
Это не вонь, всего лишь указал Вам на Ваши дилетантские ошибки.
К чему Вы этот вымышленный диалог приводите, - более чем непонятно, ко мне он не имеет ни какого отношения.
Читайте по буквам - у Вас ошибка в алгоритме. Вы, по простоте душевной, сделали из ошибочных данных Вселенские Выводы. Вот и всё. Вас пытаются поправить, но судя по Вашей реакции - результат будет чуть более чем безнадежен.
К чему Вы этот вымышленный диалог приводите,
Да вовсе не Вас я имел ввиду. На другом форуме я эту же тему поднял. Просто там много адептав СБ. И наш примерный диалог именно оттуда.
Тем не менее график именно вот такой. Угадайте почему.
Вариант №1. RND+=0.0001; выпадает гораздо чаще чем RND-=0.0001; Мы видим эффект накапливающейся прибыли.
Вариант №2. Тиков взято гораздо меньше, и это всего лишь часть картинки.
Хорошо, я возьму простые истино случайные числа 0 и 1 в количестве 200 000 штук с random.org и посмотрю что из этого получится. Только не надо потом говорить что числа надо было брать другие, и вообще надежность источинка оставляет желать лучшего.
Да вовсе не Вас я имел ввиду. На другом форуме я эту же тему поднял. Просто там много адептав СБ. И наш примерный диалог именно оттуда.
Да мне пофигу, кто там и что Вам говорил. Я отвечаю только за свои слова. Так то.
Вариант №1. RND+=0.0001; выпадает гораздо чаще чем RND-=0.0001; Мы видим эффект накапливающейся прибыли.
Это легко проверить, достаточно посчитать количество орлов или решек. В Вашем случае, но с моими поправками в коде, вероятность выпадения орла 0.500233. Это более чем близко к 50/50. Если делать по Вашему, то вероятность будет 0.499989. Это то же очень близко к 50\50, но. Но, беда в том, что Вы пытались использовать цикличный генератор как потоковый. А это нельзя.
Вариант №2. Тиков взято гораздо меньше, и это всего лишь часть картинки.
Пожалуйста, вот так выглядит ВЕСЬ ряд Ваших данных (использован Ваш сид).
И кстати, там у Вас там ошибка в подсчете тиков. Их не 10000, а 9999 получается.
Хорошо, я возьму простые истино случайные числа 0 и 1 в количестве 200 000 штук с random.org и посмотрю что из этого получится. Только не надо потом говорить что числа надо было брать другие, и вообще надежность источинка оставляет желать лучшего.
Это не поможет. Повторяю, у Вас ошибка не в качестве данных, а в логике алгоритма. Напоминаю, Вы пытались чет\нечет проверять, а это совсем не то что 0 и 1.
в орлянку - для "очень долгой" серии игры - самый простой способ выйграть - минимартини начиная с 6-9 случая невыпадения нужного исхода(орла или решки) а также используя даблы и сикслайны(схема примерно такая 1-1-1-1-2-2-3-4-5-6-8-10-12-14-16-18-20....