In this paper, we use fuzzy systems theory to convert the technical trading rules commonly used by stock practitioners into excess demand functions which are then used to drive the price dynamics. The technical trading rules are recorded in natural languages where fuzzy words and vague expressions abound.In Part I of this paper, we will show the details of how to transform the technical trading heuristics into nonlinear dynamic equations. First, we define fuzzy sets to represent the fuzzy terms in the technical trading rules; second, we translate each technical trading heuristic into a group of fuzzy IF-THEN rules; third, we combine the fuzzy IF-THEN rules in a group into a fuzzy system; and finally, the linear combination of these fuzzy systems is used as the excess demand function in the price dynamic equation. We transform a wide variety of technical trading rules into fuzzy systems, including moving average rules, support and resistance rules, trend line rules, big buyer, big seller and manipulator rules, band and stop rules, and volume and relative strength rules. Simulation results show that the price dynamics driven by these technical trading rules are complex and chaotic, and some common phenomena in real stock prices such as jumps, trending and self-fulfilling appear naturally.In Part II of the paper, we concentrate our analysis on the price dynamical model with the moving average rules developed in Part I of this paper. By decomposing the excessive demand function, we reveal that it is the interplay between trend-following and contrarian actions that generates the price chaos, and give parameter ranges for the price series to change from divergence to chaos and to oscillation. We prove that the price dynamical model has an infinite number of equilibriums, but all these equilibriums are unstable. We demonstrate the short-term predictability of the price volatility and derive the detailed formulas of the Lyapunov exponent as functions of the model parameters. We show that although the price is chaotic, the volatility converges to some constant very quickly at the rate of the Lyapunov exponent. We extract the formula relating the converged volatility to the model parameters based on Monte-Carlo simulations. We explore the circumstances under which the returns are uncorrelated and illustrate in details of how the correlation index changes with the model parameters. Finally, we plot the strange attractor and the return distribution of the chaotic price series to illustrate the complex structure and the fat-tailed distribution of the returns.In Part III of the paper, we apply the price dynamical model with big buyers and big sellers developed in Part I of this paper to the daily closing prices of the top 20 banking and real estate stocks listed in the Hong Kong Stock Exchange. The basic idea is to estimate the strength parameters of the big buyers and the big sellers in the model and make buy/sell decisions based on these parameter estimates. We propose two trading strategies: (i) Follow-the-Big-Buyer which buys when big buyer begins to appear and there is no sign of big sellers, holds the stock as long as the big buyer is still there, and sells the stock once the big buyer disappears; and (ii) Ride-the-Mood which buys as soon as the big buyer strength begins to surpass the big seller strength, and sells the stock once the opposite happens. Based on the testing over 245 two-year intervals uniformly distributed across the seven years from 03-July-2007 to 02-July-2014 which includes a variety of scenarios, the net profits would increase 67% or 120% on average if an investor switched from the benchmark Buy-and-Hold strategy to the Follow-the-Big-Buyer or Ride-the-Mood strategies during this period, respectively.