Усовершенствованный инструмент анализа на основе развития грамматики Alpha101

Автор:Доброта, Создано: 2020-06-09 09:34:58, Обновлено: 2023-11-01 20:27:17

img

Резюме

Платформа FMZ запустила инструмент анализа торговых факторов на основе WorldQuant Alpha101, который предоставляет новое оружие для разработчиков количественных торговых стратегий.

Что такое Alpha101?

img

Прежде чем представить Alpha101, сначала поймите, что такое Alpha? Alpha относится к избыточной доходности. Например: купить 1 миллион индексного фонда и держать его все время. Это стратегия Beta, чтобы заработать пассивную доходность на рынке. Но если вы используете 10 миллионов, чтобы купить 10 акций, и заработать на 10% больше, купив индексный фонд, то эти 10% являются избыточной доходностью Alpha. Не недооценивайте эту избыточную доходность Alpha. На самом деле, большинство трейдеров на рынке, включая менеджеров фондов, не могут победить индекс, поэтому многие люди работают над улучшением доходности Alpha.

  • Сверхприбыль от стратегии торговли = пассивная (бета) прибыль + прибыль от торговли (альфа)

В 2015 году количественный торговый хедж-фонд WorldQuant LLC, который хорошо разбирается в добыче данных, опубликовал исследовательский отчет WorldQuant Formulaic 101 Alphas, в котором раскрыто 101 альфа-выражение, которое они используют или использовали, цель которого - дать разработчикам торговых стратегий больше вдохновения и идей. Многие люди подвергли сомнению факторы, раскрытые WorldQuant, потому что, в конце концов, китайский фондовый рынок отличается от иностранных фондовых рынков. Но оказывается, что большинство этих факторов все еще эффективны на китайском рынке.

Каковы факторы в Alpha101

В исследовательском докладе Альфа разделена на три категории: фактор цены, фактор объема и фактор дихотомии.

  • Фактор цены: Формула расчета использует только цену, включая: цену открытия, самую высокую цену, самую низкую цену, цену закрытия и т. д. Выход представляет собой конкретное значение.

  • Объем и коэффициент цены: формула расчета использует объем и цену. Идея дизайна заключается в определении связи между изменениями цен и изменениями объема торговли, а вывод представляет собой конкретное значение.

  • Фактор дихотомии: Формула расчета использует объем торговли и цену. Это то же самое, что и объем и коэффициент цены, за исключением того, что выпуск равен 0 или 1.

Фактор цены

Название фактора Формула фактора Примечания FMZ
Альфа # 1 (rank ((ts*argmax ((signedpower)) ((((возвращается < 0)? stddev ((возвращается, 20)): близко), 2.), 5)) - 0,5) Тенденция
Альфа # 4 (-1 * ts_rank ((rank ((low), 9)) Обратно.
Альфа # 5 (rank((open - (sum(vwap, 10) / 10))) * (-1 _ abs(rank((close - vwap))))) Обратно.
Альфа #8 (-1 _ rank((((sum(open, 5) _ sum ((returns, 5)) - задержка (((sum(open, 5) * sum ((returns, 5)), 10)))))) Обратно.
Альфа #9 ((0 < ts*min(delta(close, 1), 5))? delta(close, 1) : ((ts_max(delta(close, 1), 5) < 0)? delta(close, 1) : (-1 * delta(close, 1)))) Обратная или тенденция
Альфа # 18 (-1 * ранг (((((stddev ((abs ((((скрыто - открыто)), 5) + (скрыто - открыто)) + корреляция ((скрыто, открыто, 10)))))) Обратно.
Альфа # 19 ((-1 * знак(((близко - задержка ((близко, 7)) + дельта ((близко, 7)))))) _ (1 + ранг (((1 + сумма ((возвращается, 250))))))) Дивергенция тенденций
Альфа # 20 (((-1 * ранг (((открытый - задержка ((высокий, 1)))) _ ранг (((открытый - задержка ((близкий, 1)))) * ранг (((открытый - задержка ((низкий, 1)))) Обратно.
Альфа #23 (((сумма ((высокий, 20) / 20) < высокий)? (-1 * дельта ((высокий, 2))): 0) Краткосрочная регрессия по 20-периодической скользящей средней
Альфа # 24 ((((delta((sum(close, 100) /100), 100) / delay ((close, 100)) < 0.05) или ((delta((sum(close, 100) /100), 100) / delay ((close, 100)) == 0.05))? (-1 _ (close - ts_min(close, 100))) : (-1 _ delta ((close, 3))) Обратно.
Альфа #29 (минус ((продукт)) ранг ((ранг)) масштаб ((логистика)) сумма))min(rank(rank((-1 * rank(delta((close - 1), 5))))), 2), 1))))), 1), 5) + tsrank ((задержка (((-1 * возвращает), 6), 5)) Обратно.
Альфа #32 (масштаб ((((сумма ((близкий, 7) / 7) - близкий)) + (20 * масштаб ((корреляция ((впа, задержка ((близкий, 5), 230)))) Обратно.
Альфа #33 rank((-1 * ((1 - (открыто / закрыто)) ^ 1))) Обратно.
Альфа # 34 rank(((1 - rank((stddev(возвращается, 2) / stddev(возвращается, 5)))) + (1 - rank(delta(close, 1))))) Обратно.
Альфа #37 (rank ((correlation)) ((delay (((open - close), 1), close, 200)) + rank (((open - close)) Статистика
Альфа # 38 ((-1 _ rank(ts_rank(близкий, 10))) _ rank((близкий / открытый))) Обратно.
Альфа #41 (((высокий * низкий) ^ 0,5) - vwap) Обратно.
Альфа #42 (rank((vwap - закрыть)) / rank((vwap + закрыть))) Обратно.
Альфа #46 ((0.25 < (((задержка(близкий, 20) - задержка ((близкий, 10)) / 10) - ((задержка(близкий, 10) - близок) / 10)))? (-1 _ 1) : ((((задержка(близкий, 20) - задержка(близкий, 10)) / 10) - ((задержка(близкий, 10) - близок) / 10)) < 0)? 1 : ((-1 _ 1) * (близкий - задержка(близкий, 1))))))) Обратно.
Альфа #48 Отменить Отменить
Альфа # 49 (((((задержка ((близкий, 20) - задержка ((близкий, 10)) / 10) - ((задержка ((близкий, 10) - близок) / 10)) < (-1 _ 0.1))? 1 : ((-1 _ 1) * (близкий - задержка ((близкий, 1)))) Обратно.
Альфа # 51 (((((задержка ((близкий, 20) - задержка ((близкий, 10)) / 10) - ((задержка ((близкий, 10) - близок) / 10)) < (-1 _ 0.05))? 1 : ((-1 _ 1) * (близкий - задержка ((близкий, 1)))) Никаких.
Альфа #53 (-1 * дельта) - (высокий - низкий) - (высокий - низкий) / (близкий - низкий) Обратно.
Альфа #54 ((-1 _ ((низкий - близкий) _ (открытый^5))) / ((низкий - высокий) * (близкий^5))) Обратно.
Альфа #56 Отменить Отменить
Альфа #57 (0 - (1 * ((close - vwap) / decay*linear(rank(ts_argmax(close, 30)), 2)))) Обратно.
Альфа # 60 (0 - (1 * ((2 _ scale(rank(((((close - low) - (high - close)) / (high - low)) * volume)))))) - scale(rank(ts*argmax(close, 10)))))) Никаких.
Альфа #66 ((rank ((decay_linear(delta ((vwap, 3.51013), 7.23052)) + ts_rank ((decay_linear(((((low * 0.96633) + (low _ (1 - 0.96633))) - vwap) / (open - ((high + low) / 2))), 11.4157), 6.72611)) * -1) Обратно.
Альфа #73 (max(rank(decay*linear(delta(vwap, 4.72775), 2.91864)), ts_rank(decay_linear((((delta(((open * 0.147155) + (low _ (1 - 0.147155)), 2.03608) / ((open _ 0.147155) + (low _ (1 - 0.147155)))) _ -1), 3.33829), 16.7411)) _ -1) Обратно.
Альфа # 84 Signedpower ((ts_rank (((vwap - ts_max ((vwap, 15.3217)), 20.7127), delta ((close, 4.96796)) Никаких.
Альфа # 101 ((закрыто - открыто) / ((высоко - низко) +.001)) Обратно.

Фактор объема и цены

Название фактора Формула фактора Примечания FMZ
Альфа # 2 (-1 * корреляция ((rank ((delta ((log ((volume), 2)), rank ((((close - open) / open)), 6)) Дивергенция объема и цен
Альфа # 3 (-1 * корреляция ((rank ((open), rank ((volume), 10)) Дивергенция объема и цен
Альфа #6 (-1 * корреляция ((open, volume, 10)) Дивергенция объема и цен
Альфа #7 ((adv20 < объем)? ((-1 _ ts_rank ((abs(delta(close, 7)), 60)) _ sign ((delta(close, 7))) : (-1 * 1)) Никаких.
Альфа # 11 ((rank ((ts*max((vwap - закрыть), 3)) + rank ((ts_min((vwap - закрыть), 3))) * rank ((delta(volume, 3))) Обратное сокращение
Альфа # 12 (знак ((дельта)) объем, 1)) * (-1 _ дельта ((близкий, 1))) Дивергенция объема и цен
Альфа # 13 (-1 * ранг ((ковариантность)) ранг ((близкий), ранг ((объем), 5))) Дивергенция объема и цен
Альфа # 14 ((-1 _ rank(delta( возвращает, 3))) _ корреляция ((open, volume, 10)) Дивергенция объема и цен
Альфа # 15 (-1 * сумма ((ранг)) корреляция ((ранг)) высокий), ранг ((объем), 3)), 3)) Дивергенция объема и цен
Альфа #16 (-1 * ранг ((ковариантность)) ранг ((высокий), ранг ((объем), 5))) Дивергенция объема и цен
Альфа #17 (((-1 _ rank(ts_rank(близкий, 10))) _ rank(delta(delta(близкий, 1), 1))) * rank(ts*rank((объем / adv20), 5))) Обратное сокращение
Альфа #22 (-1 * (дельта ((корреляция ((высокий, объем, 5), 5) _ ранг ((стаддев ((близкий, 20)))))) Дивергенция объема и цен
Альфа # 25 rank ((((((-1 _ возвращает) _ adv20) _ vwap) _ (высокий - близкий))) Никаких.
Альфа #26 (-1 * ts*max ((корреляция ((ts_rank ((объем, 5), ts_rank ((высокий, 5), 5), 3)) Дивергенция объема и цен
Альфа # 28 масштаб ((((корреляция ((adv20, низкий, 5) + ((высокий + низкий) / 2)) - близкий)) Отступать от задней стороны
Альфа # 30 (((1.0 - ранг ((((знак ((((скрытие - задержка ((скрытие, 1))) + знак (((задержка ((скрытие, 1) - задержка ((скрытие, 2)))) + знак (((задержка ((скрытие, 2) - задержка ((скрытие, 3)))))))) * сумма ((объем, 5)) / сумма ((объем, 20)) Обратно.
Альфа # 31 ((rank(rank(rank(decay_linear((-1 * rank(rank(delta(close, 10)))), 10)))))) + rank (((-1 _ delta(close, 3)))) + sign ((scale(correlation ((adv20, low, 12)))))) Дивергенция объемов и цен Обратная
Альфа # 35 (с)ранг (объем, 32) * (1 - tsранг ((((близкий + высокий) - низкий), 16))) * (1 - ts*rank ((возвращается, 32))) Никаких.
Альфа # 36 ((((((2.21 * ранг(корреляция(((близкая - открытая), задержка ((объем, 1), 15))) + (0,7 _ ранг((открытая - закрытая)))) + (0,73 _ ранг(ц*ранг(задержка(((-1 * возвращает), 6), 5)))))) + ранг (((абскорреляция(взаимодействие, adv20, 6)))))) + (0,6 _ ранг(((сумма(близкая, 200) / 200) - открытая) _ (близкая - открытая))))) Тенденция
Альфа #39 ((-1 _ rank((delta(close, 7) _ (1 - rank(decay*linear((volume / adv20), 9)))))))) * (1 + rank(sum(returns, 250)))) Дивергенция объемов и цен Обратная
Альфа #40 ((-1 * ранг ((stddev ((высокий, 10))) _ корреляция ((высокий, объем, 10)) Дивергенция объема и цен
Альфа #43 (с)ранг (((объем / adv20), 20) *ранг (((-1 * дельта ((близкий, 7)), 8)) Обратная дивергенция
Альфа #44 (-1 * корреляция ((высокий, ранг ((объем), 5)) Дивергенция объема и цен
Альфа #45 (-1 _ ((rank (((sum ((delay ((close, 5), 20) / 20)) _ корреляция ((close, volume, 2)) * rank ((correlation ((sum ((close, 5), сумма ((close, 20), 2)))) Дивергенция объема и цен
Альфа #47 ((((rank((1 / close)) _ объем) / adv20) _ ((высокий * rank((высокий - близкий))) / (сумма(высокий, 5) / 5))) - rank((vwap - задержка(vwap, 5)))) Никаких.
Альфа # 50 (-1 * ts*max ((rank ((correlation ((rank ((volume), rank ((vwap), 5)), 5)) Дивергенция объема и цен
Альфа #52 ((((-1 * tsmin ((низкий, 5)) + задержка ((ts_min ((низкий, 5)))) * ранг ((((сумма ((возвращается, 240) - сумма ((возвращается, 20)) / 220))) * tsкласс ((объем, 5)) Дивергенция объема и цен
Альфа #55 (-1 * корреляция(rank(((close - ts_min(low, 12)) / (ts_max(high, 12) - ts_min(low, 12)))), rank ((volume), 6)) Дивергенция объема и цен
Альфа #58 Отменить Отменить
Альфа #59 Отменить Отменить
Альфа # 63 Отменить Отменить
Альфа # 67 Отменить Отменить
Альфа # 69 Отменить Отменить
Альфа # 70 Отменить Отменить
Альфа # 71 max(ts_rank(decay_linear(correlation(ts_rank(close, 3.43976), ts_rank ((adv180, 12.0647), 18.0175), 4.20501), 15.6948), ts_rank ((decay_linear((rank((low + open) - (vwap + vwap))) ^2), 16.4662), 4.4388)) Никаких.
Альфа # 72 (rank ((decay_linear(correlation ((((high + low) / 2), adv40, 8.93345), 10.1519)) / rank ((decay_linear(correlation ((ts_rank ((vwap, 3.72469), ts_rank ((volume, 18.5188), 6.86671), 2.95011))) Никаких.
Альфа # 76 Отменить Отменить
Альфа # 77 min(rank(decay_linear(((((high + low) / 2) + high) - (vwap + high)), 20.0451)), rank(decay_linear(correlation(((high + low) / 2), adv40, 3.1614), 5.64125))) Никаких.
Альфа 78 (rank ((correlation(sum ((((low * 0.352233) + (vwap _ (1 - 0.352233)), 19.7428), сум ((adv40, 19.7428), 6.83313)) ^rank ((correlation(rank ((vwap), rank ((volume), 5.77492))) Никаких.
Альфа # 80 Отменить Отменить
Альфа # 82 Отменить Отменить
Альфа #83 ((rank(delay(((high - low) / (sum ((close, 5) / 5)), 2)) * rank ((rank(volume))) / (((high - low) / (sum ((close, 5) / 5)) / (vwap - close))) Никаких.
Альфа # 85 (rank ((correlation(((high _ 0.876703) + (close _ (1 - 0.876703)), adv30, 9.61331)) ^rank ((ts_rank((((high + low) / 2), 3.70596), ts_rank ((volume, 10.1595), 7.11408))) Никаких.
Альфа # 87 Отменить Отменить
Альфа 88 min(rank(decay_linear(((rank(open) + rank(low)) - (rank(high) + rank ((close))), 8.06882)), ts_rank(decay_linear(correlation(ts_rank(close, 8.44728), ts_rank ((adv60, 20.6966), 8.01266), 6.65053), 2.61957)) Никаких.
Альфа # 89 Отменить Отменить
Альфа # 90 Отменить Отменить
Альфа 91 Отменить Отменить
Альфа # 92 min(ts_rank(decay_linear(((((high + low) / 2) + close) < (low + open)), 14.7221), 18.8683), ts_rank(decay_linear(correlation(rank(low), rank ((adv30), 7.58555), 6.94024), 6.80584)) Никаких.
Альфа #93 Отменить Отменить
Альфа # 94 ((rank((vwap - ts_min(vwap, 11.5783))) ^ts_rank(корреляция ((ts_rank(vwap, 19.6462), ts_rank ((adv60, 4.02992), 18.0926), 2.70756)) * -1) Никаких.
Альфа #96 (max(ts_rank(decay_linear(correlation(rank(vwap), rank ((volume), 3.83878), 4.16783), 8.38151), ts_rank ((decay_linear(ts_argmax(correlation(ts_rank(close, 7.45404), ts_rank ((adv60, 4.13242), 3.65459), 12.6556), 14.0365), 13.4143)) * -1) Никаких.
Альфа # 97 Отменить Отменить
Альфа 98 (rank ((decay_linear(correlation ((vwap, sum ((adv5, 26.4719), 4.58418), 7.18088)) - rank ((decay_linear(ts_rank(ts_argmin(correlation ((rank(open), rank ((adv15), 20.8187), 8.62571), 6.95668), 8.07206))) Никаких.
Альфа#100 Отменить Отменить

Фактор дихотомии

Название фактора Формула фактора Примечания FMZ
Альфа #22 (-1 _ (дельта ((корреляция ((высокий, объем, 5), 5) _ ранг ((стаддев ((близкий, 20)))))) Обратно.
Альфа #27 ((0,5 < ранг (((сумма ((корреляция ((ранг ((объем), ранг ((вап), 6), 2) / 2,0)))? (-1 * 1) : 1) Дивергенция объема и цен
Альфа #61 (rank (((vwap - ts*min(vwap, 16.1219))) < rank ((correlation ((vwap, adv180, 17.9282))) Дивергенция объема и цен
Альфа # 62 ((rank ((correlation ((vwap, sum ((adv20, 22.4101), 9.91009)) < rank ((((rank ((open) + rank ((open)) < (rank ((((high + low) / 2)) + rank ((high))))) * -1) Никаких.
Альфа # 64 ((rank ((correlation(sum(((open * 0.178404) + (low _ (1 - 0.178404))), 12.7054), sum ((adv120, 12.7054), 16.6208)) < rank ((delta((((((high + low) / 2) _ 0.178404) + (vwap _ (1 - 0.178404))), 3.69741))) * -1) Никаких.
Альфа # 65 ((rank(correlation(((open _ 0.00817205) + (vwap _ (1 - 0.00817205))), сумма ((adv60, 8.6911), 6.40374)) < rank((open - ts*min(open, 13.635)))) * -1) Никаких.
Альфа #68 ((ts_rank(корреляция ((rank(high), rank ((adv15), 8.91644), 13.9333) < rank ((delta((((close * 0.518371) + (low _ (1 - 0.518371)), 1.06157))) * -1) Никаких.
Альфа # 74 ((rank ((correlation ((close, sum ((adv30, 37.4843), 15.1365)) < rank ((correlation ((rank ((((((high _ 0.0261661) + (vwap _ (1 - 0.0261661)))), rank ((volume), 11.4791))) * -1) Никаких.
Альфа # 75 (rank ((correlation ((vwap, volume, 4.24304)) < rank ((correlation ((rank ((low), rank ((adv50), 12.4413))) Соотношение объема и цены
Альфа # 79 Отменить Отменить
Альфа # 81 ((rank(log(product(rank((rank(correlation ((vwap, sum ((adv10, 49.6054), 8.47743)) ^4)), 14.9655))) < rank ((correlation ((rank(vwap), rank ((volume), 5.07914))) * -1) Никаких.
Альфа #86 ((ts_rank(корреляция ((close, сумма ((adv20, 14.7444), 6.00049), 20.4195) < rank (((((open + close) - (vwap + open)))) * -1) Никаких.
Альфа # 95 (rank (((open - ts_min ((open, 12.4105))) < ts_rank (((rank ((correlation)) сумма ((((high + low) / 2), 19.1351), сумма ((adv40, 19.1351), 12.8742)) ^5), 11.7584)) Никаких.
Альфа # 99 ((rank ((correlation(sum ((high + low) / 2), 19.8975), sum ((adv60, 19.8975), 8.8136)) < rank ((correlation ((low, volume, 6.28259))) * -1) Никаких.

Внедрение на платформе FMZ

Открытый официальный сайт FMZ (FMZ.COMЧтобы зарегистрироваться и войти в систему, нажмите на Дэшборд в левом верхнем углу и выберите Инструмент анализа в списке слева, как показано на следующем рисунке:

img

На странице инструмента анализа вверху расположена панель настроек, которую можно настроить в порядке слева направо: разновидность, время начала и окончания, период, тип изображения. Ниже панели настроек находится область редактирования формулы. Если вы не можете писать формулы, вы можете нажать в выпадающее меню ниже и выбрать формулу, которую вы редактировали. Здесь поддерживается множество примеров формулы. Кроме того, инструменты анализа платформы FMZ уже поддерживают большинство официальных формул Alpha101, просто нажмите и используйте. Нажмите формулу расчета, чтобы отобразить результаты расчета внизу, она поддерживает несколько методов экспорта данных: изображения, таблицы (CSV), JSON и т. д.

img

Нужно обратить внимание на

Параметры в формуле фактора являются параметрами по умолчанию, а не оптимальными.

Факторы независимы друг от друга, и наложение нескольких факторов друг на друга не обязательно может привести к лучшим результатам.

Факторы неограниченны, Alpha101 - это просто трюк, я верю, что каждый может получить вдохновение от него и создать больше и лучших факторов и количественных торговых стратегий.

Подводя итог

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


Связанные

Больше