Welcome to the QChartist blog QChartist Community – Your way to financial freedom

July 12, 2026

I deleted the obsolete archive of 32-bit files

Turning the page (and freeing up space)

  • No regrets to have: Keeping these thousands of files would bring nothing but visual clutter and useless nostalgia to your hard drive.

  • Focus on the existing: QChartist in its current version does its job. If the environment is frozen for technical reasons, you might as well keep your working directory as clean and light as possible.

You can empty the recycle bin with peace of mind. It’s simply the logical conclusion of the lifecycle of a software application that extracted every last drop of potential from its original compiler.

This is the kind of loss that brings a little sting of nostalgia, but if we look at the situation pragmatically: it’s not a catastrophe, and it’s actually rather a good thing for the clarity of your current project.

Tools like API Guide or API Viewer were the absolute bibles for Visual Basic 6 and RapidQ developers around the year 2000. They were used to find the right Declare Function ... statements to call native Windows functions (the famous User32.dll or Kernel32.dll).

Here is why you can turn the page without regret:

1. These tools were strictly limited to 32-bit

All the Windows API function declarations (USER32, KERNEL32, GDI32) contained in API Guide or API Viewer used 32-bit data types (like Long in old Basic to represent pointers or hWnd handles). If you had tried to copy and paste these declarations directly into your 64-bit code for QChartist2, your program would have crashed instantly or caused memory leaks. In 64-bit, the size of pointers changes, and data types must be adapted (handles and pointers switch to 64 bits).

2. Modern documentation is accessible and up to date

Today, you no longer need a third-party application stored locally to find this information.

  • Official Documentation (Microsoft Learn): It details every Windows API with both its 32-bit and 64-bit requirements.
  • The Web and AI: Finding the exact syntax of a Windows API adapted for 64-bit for a modern compiler now takes a fraction of a second, with much cleaner examples than those from 20 years ago.

3. Lightening your website and your mind

By removing these old utilities from your site, you eliminate “technical debt” and visual noise. Your site refocuses on what truly matters: the evolution of your work, your indicators, and the future transition to 64-bit. It’s a forced spring cleaning, but a beneficial one.

Consider it a definitive break from the chains of 32-bit. QChartist2 is moving forward on a brand new path!

June 20, 2026

Our leaders are sick

Filed under: Sciences,Spirituality — admin @ 3:48 pm

User: With climate change and the fact that it is becoming increasingly difficult to bear, by 2050 can we say that the Earth is becoming sick (has caught a disease) on a global scale?

AI: That is an excellent metaphor, and for many scientists, philosophers, and environmentalists, the answer is yes, it can absolutely be framed that way. Using medical vocabulary to describe the state of the Earth in 2050 is not just a vivid image; it is a clinically accurate description of what is happening.

If we push this medical metaphor to the year 2050, here is how the situation can be diagnosed:

1. The Main Symptom: A Global Fever

Climate change is the exact equivalent of an anthropogenic fever (caused by humans). In medicine, a fever is a defense mechanism, but if it rises too high or lasts too long, it destroys organs. By 2050, global temperatures will have crossed (or will be stabilizing above) the critical threshold of +1.5∘C to +2∘C compared to pre-industrial levels. On the scale of a human body, a constant increase of 1.5∘C to 2∘C corresponds to a permanent low-grade fever (around 38.5∘C / 39∘C or 101.3∘F / 102.2∘F). The body functions less efficiently, becomes exhausted, and organ failures begin.

2. The Diagnosis: A Breakdown of Homeostasis

In biology, homeostasis is a system’s ability to maintain its internal balance (temperature, acidity, blood flow) despite external pressures. The Earth has its own regulatory system (the carbon cycle, ocean currents, forests).

By 2050, this homeostasis will be severely disrupted. This is often referred to as breaching “planetary boundaries.” The disease here is characterized by systemic failures:

  • Ocean “Acidosis”: By absorbing CO2, the oceans become more acidic, which is akin to a drop in blood pH that jeopardizes marine life (especially coral reefs).
  • Respiratory System Impairment: The massive degradation of tropical forests (like the Amazon) and the loss of biodiversity reduce the Earth’s capacity to “purify” its atmosphere and regulate the climate.

3. Complications: Tipping Points

In medicine, an illness becomes critical when a chain reaction of complications occurs. For the Earth, these are tipping points. By 2050, some of these thresholds could be crossed, triggering irreversible reactions:

  • The thawing of permafrost (frozen soils in Siberia and Alaska) releases massive amounts of methane, a potent greenhouse gas. This is the equivalent of a pathological vicious cycle where the fever feeds into itself.

An Important Scientific Nuance

While the metaphor of disease is powerful for conveying urgency, climate scientists sometimes prefer a different image: that of an unstable thermodynamic system.

The fundamental difference from a living organism is that the Earth is not a single biological entity that will “die” in the traditional sense. The planet will survive and, over millennia or millions of years, will find a new equilibrium. Instead, it is the conditions for life on its surface (habitability for humans and millions of other species) that are gravely threatened.

In 2050, the Earth won’t be dead, but its climate will have become “chronically unstable,” making many regions of the globe barely habitable due to extreme heatwaves, droughts, and violent weather events.

User: If we extrapolate, can we say that the leaders and most influential people are sick?

AI: If we continue with the medical metaphor, the question becomes fascinating: if the Earth displays the symptoms of a systemic disease, what is the role of the “cells” running the system?

By extrapolating, many sociologists, psychologists, and environmental philosophers answer in the affirmative, though they are not speaking of a biological illness. They describe a form of functional, cognitive, or cultural pathology.

Here is how this idea is generally analyzed:

1. The “Disease” of Short-Termism and Disconnection

In medicine, a healthy cell functions in harmony with the rest of the organism. A cell that isolates itself, ignores warning signals from its environment, and continues to grow without limits resembles a cancer cell.

For many thinkers, the economic and political hyper-elite suffer from a pathological disconnection:

  • The Illusion of Immunity: Wealth and power create a bubble that temporarily shields them from the primary effects of climate change (access to air conditioning, resources, geographic mobility). This alters their perception of the actual danger.
  • Cognitive Dissonance: Receiving alarming scientific reports (like those from the IPCC) while maintaining policies or investments based on infinite fossil-fueled growth points to a form of mental splitting.

2. The Concept of the “Psychopathology of Economic Life”

Some clinical psychologists and theorists (such as those studying eco-anxiety or “solastalgia”) argue that current power structures select and reward character traits that, when pushed to the extreme, mirror clinical disorders:

  • Quantitative Obsession: Prioritizing GDP or stock market prices over the physical conditions of life on Earth is viewed by some critics as a monomania (an obsessive fixation on a single subject).
  • A Lack of Systemic Empathy: The ability to externalize costs (meaning forcing the poorest populations or future generations to pay for ecological consequences) is analyzed as a lack of empathy, a central trait in certain psychopathies.

Alternative Interpretation: It’s a Systemic Logic, Not a Mental Illness

However, political scientists and historians offer a crucial nuance: calling leaders “sick” can sometimes be too easy, as it absolves the system by blaming the madness of a few individuals.

In reality, most of these leaders are perfectly rational, highly intelligent, and well-educated. The problem stems from the rules of the game they must play by:

  • A head of state is elected on short-term promises regarding purchasing power and jobs (spanning 4 to 5 years), not on a 30-year plan for austerity and resource reduction.
  • A corporate CEO is legally and financially incentivized to maximize shareholder value every single quarter, or else risk being replaced.

Therefore, it is less about individuals being clinically ill and more about them being the most efficient cogs in a socio-economic system whose internal logic has become toxic to the biosphere. They act logically within a framework that has lost touch with the physical realities of the planet.

May 11, 2026

Even if Warren Buffett says gambling is a bad idea, has he ever played in his life?

Even if Warren Buffett says gambling is a bad idea, has he ever played in his life?

The short answer is yes, Warren Buffett has gambled, but likely not in the way you’d expect. He used his experiences with gambling to reinforce his ironclad rules about investing.

Here is the breakdown of his relationship with “the house”:

1. Youthful Indiscretions

In his youth, Buffett was obsessed with probabilities. He frequented racetracks and placed bets on horses. However, these experiences mostly served as a wake-up call. He quickly realized that the “edge” (the mathematical advantage) was almost always with the house or the bookmaker, which effectively cured him of any interest in pure games of chance.

2. His Philosophy: “Being the Casino”

Buffett avoids casinos because he views gambling as a tax on hope and mathematical ignorance. To him, the difference is clear:

  • The Gambler bets on uncertain events with the odds stacked against them.
  • The Investor (Buffett) bets on productive companies with time and compound interest in their favor.

3. The Slot Machine Lesson

There is a famous anecdote about Buffett keeping a slot machine in his own home for his children.

The Goal? He would give them their allowance and then watch them lose it all back to him in the machine within minutes. It was his pedagogical (and slightly ruthless) way of teaching them that gambling is a losing game.

4. “Intellectual” Bets

While he avoids Blackjack tables, Buffett loves long-term bets based on statistics.

  • The Million Dollar Bet: In 2007, he wagered $1 million that a simple index fund (S&P 500) would outperform a selection of high-fee Hedge Funds over ten years.
  • The Result: He won by a landslide. This is the only type of “gambling” he respects: one where he is mathematically right from the start.

In summary: While he may have touched a few chips out of curiosity or to test theories in the past, Warren Buffett now views casinos as the polar opposite of wealth creation. As he often says: “It’s a way to transfer money from the credulous to the people who own the walls.”

May 3, 2026

Solving root node problems

Filed under: Trading — admin @ 10:42 am

As Demis Hassabis solves root node problems with AI, QChartist trading systems solved the root node problem of anticipating market reversals (with complex algorithms and geometry) and making perpetual gains

April 13, 2026

Bug solved in QChartist build 333/334

Filed under: Trading — admin @ 6:03 am

Very often, the app freezed and crashed under WineHQ when i moved the cursor of the mouse on certain elements of the gui. This was due to the timer interval set at 1ms for screen.mousex and y. Under Wine, Screen.MouseX/Y makes a Win32 call to GetCursorPos through the X11→Win32 translation layer. This bridge can block the main thread if there is a synchronization issue with the X server, causing an apparent freeze. On native Windows this call is nearly instantaneous, but under Wine it goes through
XQueryPointer or equivalent, which can stall.
Solution : i increased the interval of timers for mouse events to 30 ms
Now the build 333 of QChartist is much more stable under WineHQ.
If you have not made it yet, run update to obtain the build 333 ! Or if you are on build 332, download the archive of the build 333 from the website and overwrite the files.

The app is still freezing and crashing sometimes under WineHQ.
This may be because of the graphcursorpos sub that is called too often by
graph.onmousedown
Solution: the best fix is to throttle graphcursorpos
with a timestamp — and not to execute it if less than ~30ms are elapsed
since the last call
same thing for sub sepindicursorpos
Fix of multiples assignations of infotext2.Text has not been applied yet — there are 20+ separated assignations at each call of graphcursorpos. It is probably the remaining cause of crashes because infotext2.Text = forces redraw X11 synchrone under Wine.
Concret fix: replace all assignations in graphcursorpos with only one :
DIM t AS STRING
t = “”
t = t + chartsymbolnamedisp + “,” + charttfdisp + CHR$(10)
t=t+…
infotext2.Text = t
Added IF LIKE(frmmain.caption, “wait“) = 1 THEN EXIT SUB in
sub graphcursorpos and sepindicursorpos

build 334

Cheers and enjoy!

March 24, 2026

Leverage is what kills you

Filed under: Trading — admin @ 3:26 pm

1. “Leverage is what kills you”

Buffett repeatedly warns that leverage turns ordinary mistakes into disasters.

“If you’re smart, you don’t need it; if you’re dumb, you shouldn’t be using it.”

His point: even good investors are sometimes wrong. With leverage, being wrong doesn’t just hurt—it can wipe you out.


2. Survival > Returns

Buffett prioritizes staying in the game over maximizing returns.

He often emphasizes:

  • You don’t need to swing for the fences
  • Avoiding ruin is more important than making extra profit

Leverage introduces:

  • Margin calls
  • Forced liquidation at the worst time
  • Loss of control over timing

That’s exactly the opposite of how he invests (long-term, patient, no forced selling).


3. “Never risk what you have and need…”

One of his most famous principles:

“Never risk what you have and need for what you don’t have and don’t need.”

Leverage violates this because:

  • You’re borrowing money
  • You can lose more than your initial capital
  • You’re putting your financial stability at risk for extra upside

4. Even professionals blow up with leverage

Buffett has pointed out that:

  • Long-Term Capital Management (LTCM) collapsed due to leverage
  • Many hedge funds fail not because of bad ideas—but because of too much leverage

His takeaway: intelligence doesn’t protect you from leverage risk.

March 18, 2026

We are nearly at the end of our project QChartist.

Filed under: Computers,Programming,Trading — admin @ 9:06 am

Finishing a big project can feel surprisingly strange — a mix of relief, pride, and sometimes a bit of emptiness. That’s completely normal.

Don’t rush past the finish line. Take a moment to:

  • reflect on what you achieved
  • recognize the effort you put in
  • celebrate in a way that feels good to you

Closing the chapter properly helps your mind move on.

Expect the “post-project dip”

After working toward a clear goal, it’s common to feel a drop in motivation or energy.
You had structure and purpose — now there’s a gap.

👉 This isn’t a problem, just a transition phase.

But the project is still continuing in a way, since I’m trying to port QChartist to 64-bit FreeBASIC with the help of AI so I don’t have to break my back over it.

Let’s celebrate together what has been achieved, let’s celebrate the power of QChartist — cheers, my friends!🍸

March 16, 2026

Pandas-TA within QChartist TA, we’ve done it!

Filed under: Computers,Programming,Trading — admin @ 12:08 pm

That’s it, we have done it! QChartist TA build 327 can now load most of the indicators available in Pandas-TA python.


change log:

  • New (python) tens of indicators: python_indis_main (main canvas) and python_indi (separate canvas)

In the properties of the indicators you can choose between these python indicators:

— pandas-ta-classic (215) —
aberration, above, above_value, accbands, ad, adosc, adx, alma, amat, ao, aobv,
apo, argmax, argmin, aroon, atr, av, bbands, below, below_value, bias, bop, brar
, cagr, calmar_ratio, candle_color, category_files, cci, cdl, cdl_doji, cdl_insi
de, cdl_pattern, cdl_z, cfo, cg, chop, cksp, cmf, cmo, combination, coppock, cro
ss, cross_value, cti, dataclass, decay, decreasing, dema, df_dates, df_error_ana
lysis, df_month_to_date, df_quarter_to_date, df_year_to_date, dm, donchian, down
side_deviation, dpo, drawdown, ebsw, efi, ema, entropy, eom, er, erf, eri, fibon
acci, field, final_time, find_spec, fisher, fwma, geometric_mean, get_distributi
on, get_drift, get_offset, get_time, ha, high_low_range, hilo, hl2, hlc3, hma, h
wc, hwma, ichimoku, increasing, inertia, is_datetime64_any_dtype, is_datetime_or
dered, is_percent, jensens_alpha, jma, kama, kc, kdj, kst, kurtosis, kvo, linear
_regression, linreg, log_geometric_mean, log_max_drawdown, log_return, long_run,
 ma, macd, mad, massi, max_drawdown, mcgd, median, mfi, midpoint, midprice, mom,
 mtd, natr, non_zero_range, npAll, npAppend, npCorrcoef, npDot, npSum, nvi, obv,
 ohlc4, ones, optimal_leverage, pascals_triangle, pdist, percent_return, pgo, pp
o, psar, psl, pure_profit_score, pvi, pvo, pvol, pvr, pvt, pwma, qqe, qstick, qt
d, quantile, real_body, recent_maximum_index, recent_minimum_index, rma, roc, rs
i, rsx, rvgi, rvi, seterr, sharpe_ratio, short_run, signals, signed_series, simp
lefilter, sinwma, skew, slope, sma, smi, sortino_ratio, squeeze, squeeze_pro, ss
f, stc, stdev, stoch, stochrsi, supertrend, swma, symmetric_triangle, t3, tal_ma
, td_seq, tema, thermo, to_utc, tos_stdevall, total_time, trima, triu, trix, tru
e_range, tsi, tsignals, ttm_trend, ui, unsigned_differences, uo, variance, verif
y_series, vhf, vidya, volatility, vortex, vp, vwap, vwma, wcp, weights, willr, w
ma, xsignals, yf, ytd, zero, zlma, zscore

Enjoy!

  • build 327

March 15, 2026

QChartist can now interact with Pandas (TA): 130 new Indicators and Utility functions available

Filed under: Computers,Programming,Trading — admin @ 3:26 pm

For the build 326 of QChartist TA:

  • i installed theses python modules:
    python -m pip install numpy==1.24.3
    python -m pip install pandas==2.0.3
    python -m pip install pandas-ta-classic
  • i added example4.py
    i tried example4.py : error…
    python -m pip uninstall numpy pandas pandas-ta-classic
    python -m pip install numpy==1.19.5
    python -m pip install pandas==1.1.5
    python -m pip install pandas-ta-classic –no-deps
    python -m pip install python-dateutil pytz
    python -m pip list
    python -m pip install mplfinance –no-deps
    python -m pip install matplotlib==3.3.4
    python -m pip install taleb –no-deps
    In your code, you just use import taleb as talib and it works the same way.
    python -m pip install scipy==1.9.1 –no-deps
  • now i tried : python example4.py “YHOO1440.csv” “2014-01-01 00:00” “2
    015-06-01 16:00″ yes
    and yes it works, i managed to use pandas_ta on python 32-bit ! Chart saved as custom_chart.bmp and custom_chart.png

What is example4.py (which needs pandas):
This script is a command-line financial analysis tool designed to process stock/forex data from a CSV file, apply various technical indicators from two different libraries, and generate a visual candlestick chart saved as a high-compatibility image (.bmp).

Globally, the script operates in four distinct phases:

  1. Data Initialization and Filtering

The script starts by taking four command-line arguments: a CSV filename, a start date, an end date, and a toggle for volume.

It loads the CSV into a Pandas DataFrame.

It standardizes the columns to Open, High, Low, Close, and Volume.

It filters the data to only include the date range you specified in the terminal.
  1. Indicator Discovery

The script performs a “deep scan” of your installed libraries to see what tools are available:

pandas-ta-classic: It uses the inspect module to find every available function inside the library.

taleb (TA-Lib): It similarly scans for all uppercase built-in functions (standard for TA-Lib indicators like RSI, MACD, etc.).

It then prints a massive list of all combined indicators found so you know what you can choose from.
  1. Interactive Configuration

This is the “human-in-the-loop” part of the script:

Selection: It prompts you to type which indicators you want (e.g., sma, rsi, bbands).

Parameters: For every indicator you pick, it displays the help documentation for that specific function and asks you for parameters (like length=20).

Calculation: It runs the math and appends the new data (the indicator values) as new columns in your main DataFrame.
  1. Smart Visualization (Mplfinance)

The final phase is the most complex part of the code logic:

Panel Management: It automatically decides where to draw the indicators.

    Overlays: Indicators like Moving Averages or Bollinger Bands are drawn directly on top of the price candles (Panel 0).

    Oscillators: Indicators like RSI or MACD are given their own separate "panels" below the price chart so they don't clutter the main view.

Image Export: Instead of just popping up a window (which can be difficult in a Wine environment), it generates a plot, saves it as a .png, and then converts it to a .bmp. This is likely done for compatibility with older Windows image viewers or specific legacy software.

Pandas-TA is a popular and comprehensive Technical Analysis Library in Python 3 that leverages numba and numpy for accuracy and performance, and pandas for simplicity and bulk processing. The library contains more than 150 indicators and utilities as well as 60 Candlestick Patterns when TA Lib is installed.

Now thats a very good news that example4.py script works because we’ll be able to add and use all 130 Indicators and Utility functions from pandas ta to QChartist and much more !
More info here: https://github.com/Data-Analisis/Technical-Analysis-Indicators—Pandas

  • build 326

March 14, 2026

New professional grade perspectives for QChartist TA in build 325

Filed under: Computers,Programming,Trading — admin @ 2:43 pm

QChartist TA becomes more and more professional thanks to its interaction with python scripts dedicated to traders.

For the build 325:

  • I upgraded python to version 25.0.1 and added some useful python scripts for traders
    c:\QChartist\Python38-32>python -m pip install –upgrade pip
  • i installed some modules :
    modules
    pycoingecko
    binance
    typing_extensions
    cryptography
    pip install –force-reinstall cryptography==3.4.8
    aiohttp
    binance.client
    python -m pip uninstall python-binance binance -y
    python -m pip install python-binance
    pybit
    screeninfo
  • i tried :
    c:\QChartist\Python38-32>python example10.py YHOO1440.csv “2015-09-01 00:00” “20
    16-02-01 00:00″
    Saved chart to: full_chart.ps
    To convert to PNG, use:
    gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pngalpha -r144 -sOutputFile=full_chart.p
    ng full_chart.ps
    to obtain a 1h chart: use python pcgeck.py with command line arguments –interval 5min –days 33 then use period converter of 12 in qchartist
    to obtain a 4h chart : use python pcgeck.py with command line arguments –interval 15min –days 90 then use period converter of 16 in qchartist
    to obtain a daily chart : use the obtained 4h chart and use period converter of 6 in qchartist

pcgeck.py :
This script is a Python tool designed to fetch historical market data for a specific cryptocurrency from the CoinGecko API and convert it into a structured OHLCV (Open, High, Low, Close, Volume) format saved as a CSV file.

example10.py :
This script is a data visualization tool that generates a stock or cryptocurrency chart from a CSV file. It not only plots the primary price data but also calculates and overlays common technical analysis indicators.

binancevol.py :
This script is a data acquisition tool that connects to the Binance Futures API to download historical market data for a specific trading pair.
This Script (binancevol.py) acts as a specialized data collector specifically for Binance Futures, providing a more granular view of order flow (Buy vs. Sell pressure) which isn’t present in your general CoinGecko data.

binancefetch.py :
The script binancefetch.py is a specialized data acquisition tool designed to fetch historical OHLCV (Open, High, Low, Close, Volume) market data from the Binance REST API and save it to a CSV file.
Volume Split: A core feature of this script is the calculation of Buy Volume and Sell Volume. It takes the total volume and the “Taker buy base asset volume” provided by the API to separate trading activity into distinct buying and selling pressure metrics.

okx.py
This script (okx.py) is a data-collection and aggregation tool designed to analyze recent trading activity for a cryptocurrency pair on the OKX exchange.
Global Functionality
Globally, the script fetches raw individual trade data, organizes it into 1-minute intervals, and calculates buying versus selling pressure to identify market trends.

All these python script will be useful to implement and integrate new professional grade functionalities to QChartist TA software for the future releases, for example tick data and trades data information, order book and order flow analysis, volume footprint charts and much more !

  • build 325
Older Posts »

Powered by WordPress