For many different types of applications, it is not uncommon to try to analyze events for various reasons. For example, weather specialists may analyze current weather conditions to try to detect hazardous conditions so they can provide warning of potentially hazardous weather. In another example, stock market analysts often try to determine the direction of stock movement to make buy and sell decisions. For these types of applications, a history of fluctuations in various factors may be analyzed.
The embodiments are described in detail in the following description with reference to examples shown in the following figures.
For simplicity and illustrative purposes, the principles of the embodiments are described by referring mainly to examples thereof. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the embodiments. It is apparent that the embodiments may be practiced without limitation to all the specific details. Also, the embodiments may be used together in various combinations.
An event fluctuation detection and analysis system according to an example determines fluctuations of a metric or multiple metrics during a short period of time, such as fluctuations every millisecond, second, every minute or over other durations. The detection of fluctuations of the metric over the time period can be performed over multiple events, e.g., fluctuations for multiple stocks or for multiple weather conditions which may be at multiple locations, simultaneously. An event is something that happens or is regarded as happening and the event may have a metric or multiple metrics to describe or measure the event. A fluctuation or percentage fluctuation of a stock are examples of an event and they have stock price as a metric for measuring happenings for the stock. Another example of an event is a weather condition, such as a hurricane or tornado, and metrics may include wind speed, temperature, etc. The values of a metric over time can be correlated to the values of the same metric of a different event or a different metric of the same or different event by the system or by a user viewing the pixel-based visualization described below. The event fluctuation detection and analysis system can generate pixel-based visualizations of the fluctuations, which may include co-occurring impact factors that can cause the fluctuations. For example, the event fluctuation detection and analysis system can compute a change in fluctuation of the metric over a short duration to detect multiple event fluctuations at a high granularity, such as computing the fluctuation of stock prices for multiple stocks every minutes or every seconds; align the fluctuations by time along with co-occurring impact factors, such as news, sentiment, product reviews, etc., in a pixel space; and generate real-time animation of the fluctuations aligned with the co-occurring impact factors to facilitate detection of moving patterns. The animation includes an animation of the pixel-based visualization over time.
A pixel-based visualization for example includes a pixel representing an amount of fluctuation for each time period. For example, a pixel may be provided for each second and represents an amount of change of the metric over the second. The amount of change or amount of fluctuation may be based on a highest value and lowest value for the time interval. For example, a stock price may vary by 0.002, which is a difference from a highest stock price to lowest stock price in the second. Percentage fluctuation is another example of computing an amount of fluctuation and is further described below. The color and/or brightness of the pixel for example is determined from the value (e.g., 002) of the amount of change of the metric for the time period. For example, a larger amount of change is represented by a darker color in a color scale or a darker shade in grey-scale than a pixel representing a smaller amount of change.
The examples of the present disclosure are generally described by way of example with respect to measuring and analyzing stock price fluctuations for multiple stocks whereby each stock percentage fluctuation is considered an event. However the examples of the present disclosure can be applied to many different types of events and related metrics, such as weather events, computer network events, energy consumption events and healthcare events. The events can be analyzed to detect patterns or anomalies and to react to them accordingly.
Unlike conventional line charts for analyzing historic data, the event fluctuation detection and analysis system is able to generate pixel-based visualizations that allow a user to observe changes in a fine-grained scale, e.g., from minute-to-minute or second-to-second, depending on the application needs. Also, the system concurrently incorporates impact factors, such as sentiment, company productivity and profitability, etc., in the pixel-based visualization to facilitate determination of the root cause of the fluctuations. Also, the pixel-based visualization and animation are user interactive. A user interactive visualization or user interactive animation for example allows user selection of one or more pixels which can invoke an action, such as a drill-down or zoom-in display of a selection. The drill-downs and zoom-ins can provide detailed information regarding metrics and impact factors in selected time periods. Furthermore, according to an example, the system can generate fine-grained visualization, such as pixels that represent a percentage fluctuation every millisecond or every second or every minute or for another time interval between a millisecond and a minute inclusive. This fine-grained visualization allows the user to detect patterns and/or anomalies, such as a high percentage fluctuation over multiple stocks in short time intervals, that otherwise would not be detectable in time intervals of a longer duration.
The system 100 may be embodied on a computer including, for example, a processor 102, a data storage device 104, and an input/output interface 106. In one example, the computer is a server but other types of computers may be used, Also, the components are shown in a single computer as an example and in other examples the components may exist on multiple computers and the components may comprise multiple processors, data storage devices, interfaces, etc.
The data storage device 104 may include a hard disk, memory, etc. The data storage 104 may store any data used by the system 100. The processor 102 may be a microprocessor, a micro-controller, an application specific integrated circuit (ASIC), field programmable gate array (FPGA), or other type of circuit to perform various processing functions.
In one example, the system 100 comprises machine readable instructions stored on a non-transitory computer readable medium, such as the data storage device 104, and executed by the processor 102 to perform the functions of the system 100. For example, the system 100 may include a metric fluctuation module 110, an impact factor module 111, and a visualization generator 112 stored on the data storage device 104 as shown in
The input/output (I/O) interface 106 comprises a hardware and/or a software interface. The I/O interface 106 may be a network interface connected to a network, such as the Internet, a local area network, etc. The system 100 may receive metrics and user-input through the I/O interface 106. The system 100 may generate the pixel-based visualizations and provide the pixel-based visualizations to the user via the I/O interface 106 or may include a display to display the visualizations.
The system 100 may be connected to a database 120 or other type of data storage system to store measurements and values for metrics and impact factors. Any type of data used by the system 100 may be stored in the database 120. The database 120 may be hosted on a separate computer such as a database server and some of the information used by the system 100, for example data for generating the visualizations, may be stored locally to provide real-time animation of the fluctuations.
As discussed above, the system 100 may include the metric fluctuation module 110, the impact factor module 111, and the visualization generator 112. The metric fluctuation module 110 determines an amount of change of a metric for an event over a duration. According to an example, the metric fluctuation module 110 computes a percentage fluctuation of the metric, such as stock price fluctuation, over each duration, such as every second, every minute, etc. The computation can be performed over multiple events, such as for multiple stocks, simultaneously. An example of the computation for computing the percentage fluctuation of the metric is as follows:
where eventValue(x) is the value of the metric (e.g., stock price) for which the computation is performed and eventValue(x)≧0∀x. Δxi is the time interval to be analyzed, and f(Δxi) is the percentage fluctuation of the value of the metric over the interval Δxi. Low eventValue(x) is the lowest eventValue in the time period and high eventValue(x) is the highest eventValue in the time period. The percentage fluctuation for example has a minimum value of zero and a maximum of unity, such as 1.
The metric fluctuation module 110 may obtain the values for the metric and calculate the percentage fluctuation of the value of the metric over consecutive intervals in real-time to generate the pixel-based visualizations in real-time. The values for the metric may be obtained from external sources.
The impact factor module 111 obtains or calculates values for impact factors that are associated with the metric and event. The impact factors are factors that may cause or influence fluctuations of the metric for the event. For example, sentiment, product ratings, news, and profits are examples of impact factors that may influence the metric of stock price for a stock. Values of the impact factors may be obtained from external sources. The impact factor module 111 may perform a time correlation of values for impact factors with metric values. For example, a stock price is determined for a particular time interval. A measurement for an impact factor taken is also determined for the same time interval, and the stock price and the measured impact factor are identified as being for the same time interval. The values may be received and/or stored with an indicator identifying their associated time interval. This information may be used to align metric values with impact factor values for the pixel-based visualization.
The visualization generator 112 generates pixel-based visualizations of the fluctuations of metric values and impact factors for multiple events. Examples of the pixel-based visualizations are described below. Also, the visualization generator 112 facilitates selection and drill-downs on metrics as is further described below. Furthermore, the visualization generator 112 can generate an animation to show the fluctuations and facilitate detection of moving patterns. Through the drill-down capability of the system 100, users may access the data points during the animation.
The pixel-based visualization shown in
The pixels for all the stocks are aligned by their occurrence in time. For example, a column along the y-axis in the plane represents the same time interval over all the stocks shown in the visualization. Displaying the pixels so their corresponding intervals are aligned in the visualization by time allows patterns of . high fluctuations in stock price to be identified for consecutive short time intervals across multiple stocks. An example of a pattern of high fluctuations in stock price for the same time interval and manifesting over multiple stocks is highlighted by box 201. In box 201, a dark line is shown for the same 5-7 minute time interval across multiple stocks. This is illustrating that multiple stocks are experiencing high fluctuations in stock price over the same time interval. Furthermore, the visualization also illustrates that this pattern is unusual for the time of day that the high fluctuations are occurring. As shown in
202, which is shown in box 201, represents the pixels for AXP for the 5-7 minute time interval described above whereby most of the stocks are experiencing high fluctuations in the middle of the trading day. For example, as shown in
Values for co-occurring impact factors can be included in the pixel-based visualizations. The values for these factors may come from various sources. Values for the impact factors may be in the last row of an x-y pixel plane. In a radial representation, the values may be provided as a ring. For example,
The pixel-based visualizations and animations generated by the system 100 may be generated in real-time or to analyze historic data. For real-time analysis, the visualizations and animations for example may be generated as soon as the data for the events are received. For historical analysis, data from previous time intervals for which data is stored may be retrieved to generate the visualizations and animations.
Method 600 shown in
At 601, the system 100 determines a fluctuation of a metric for an event over time intervals. For example, the metric fluctuation module 110 of the system 100 determines a fluctuation of a metric for an event over a time interval. The time interval may be a short duration, such as every second, every 10 seconds, every minute, every 5 minutes, etc. The fluctuation may be determined over consecutive time intervals for a longer duration, such as determining fluctuation in stock price every second over an entire trading day. In one example, the fluctuation is the percentage fluctuation described above in Equation (1). Also, the fluctuations may be determined for multiple events, which may be computed simultaneously. For example, the percentage fluctuations are computed for multiple stocks simultaneously.
At 602, a pixel-based visualization of the fluctuations is generated. For example, the visualization generator 112 of the system 100 generates a pixel-based visualization of the fluctuations in the metric for an event or multiple events. Examples of the pixel-based visualization are shown in
The system 100 allows a user to detect patterns or anomalies by viewing the pixel-based visualization. Also, the system 100 itself may detect the patterns or anomalies and perform an action in response to the detection. For example, the system 100 may store thresholds, such a percentage fluctuation threshold. If the threshold is exceeded by events for multiple stocks in one interval or multiple consecutive intervals, then an action may be performed, such as generating an alert, executing a stock trade, etc. This detection and execution of an action may be performed prior to the display of the pixel-based visualization, during the display and/or after the display.
A pixel in a pixel-based visualization, for example, is a point or small area in a pixel space. Together, the pixels form the pixel-based visualization. A pixel value of a pixel in the pixel-based visualization, for example, is or is represented by the amount of fluctuation in a metric for an event for a time interval. For example, if percentage fluctuation is determined every second for a stock price for a trading day, the computed percentage fluctuation for a second is the pixel value for a pixel for that second. Accordingly, a pixel may be generated for each second of the trading day for the stock.
The color or shade of the pixel may be determined according to the pixel value. For example, the amount of fluctuation in one second (e.g., percentage fluctuation) is associated with color value or grey-scale value that identifies a particular color or shade. Thus, different percentage fluctuations may be associated with different colors or different shades. This is illustrated in the examples of the pixel-based visualizations described above and shown in
Also, pixels for multiple events may be aligned by time, For example, pixels for the same time interval and for multiple events are aligned linearly. For example, the pixels for the same time interval are in the same column, such as shown in
Also, an impact factor or multiple impact factors may be shown in a pixel-based visualization, and pixels for the impact factor may also be aligned by time. For example,
While the embodiments have been described with reference to examples, various modifications to the described embodiments may he made without departing from the scope of the claimed features.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2014/014222 | 1/31/2014 | WO | 00 |