ECO

Home * Knowledge * Opening Book * ECO

Encyclopaedia of Chess Openings, (ECO) a de facto standard of a classification system for chess openings, established by Chess Informant since 1966, using a coding system that has been widely-used and adopted by other chess publications, chess programs, databases and GUIs. There are five main categories, "A" to "E", which are divided into one hundred subcategories each, in total 500 from A00 to E99. ECO code is a registered trademark of Chess Informant.

=Main Classifications=
 * A - Flank openings
 * B - Semi-Open Games other than the French Defence
 * C - Open Games and the French Defence
 * D - Closed Games and Semi-Closed Games
 * E - Indian Defences

=Ambiguity= ECO codes are defined by halfmove sequences from the initial position with non-uniform length or depth of one to 28 plies. The position reached after that move sequence associates the ECO code. Depending on the particular opening and its classification granulation and depth, the ECO assignment may change during the course of the opening from halfmove to halfmove to more specific classified ECO codes until it sticks with the final assessment. However, due to transpositions, even into color flipped positions, ambiguity manifests in different implementations of chess engines, databases and GUIs. As pointed out by Gregor Cramer, ChessBase assigns "1.f4 e5 2.d4" to A02, and "1.d4 e5 2.f4" to A40, but Scidb assigns both lines to A02. Since there are zillions of transpositions f.i. between Scandinavian gambit B01, Caro Kann B13, B14, Symmetrical English A35, and Queens Gambit D26, D40, ..., the following position has ambiguous ECO assignments. How should it be classified? Depending on the sequence of moves reaching it? r1bqkb1r/pp3ppp/2n1p3/3n4/3P4/2N2N2/PP3PPP/R1BQKB1R r1bqkb1r/pp3ppp/2n1p3/3n4/3P4/2N2N2/PP3PPP/R1BQKB1R w KQkq - Four of many possible move sequences to reach the same position: 1.e4 d5 2.exd5 Nf6 3.c4 c6 4.d4 cxd5 5.Nc3 Nc6 6.Nf3 e6 7.cxd5 Nxd5 1.e4 c6 2.d4 d5 3.exd5 cxd5 4.c4 e6 5.Nf3 Nf6 6.cxd5 Nxd5 7.Nc3 Nc6 1.d4 d5 2.c4 e6 3.Nc3 Nf6 4.Nf3 c5 5.cxd5 Nxd5 6.e3 cxd4 7.exd4 Nc6 1.c4 c5 2.Nc3 Nf6 3.Nf3 Nc6 4.e3 e6 5.d4 cxd4 6.exd4 d5 7.cxd5 Nxd5

=Sample Implementation= The book identification code of the opening book in IsiChess (commercial DOS version) had all book lines defined in a PGN-like textfile with a descriptive name and ECO code associated, much more than the 500 determinative ECO lines and full of transpositions, merged into an opening tree similar to a persistent transposition table indexed by the Zobrist key, keeping not only a list of possible moves from the current position, but also a list of different predecessor moves aka indices to the different opening lines. Its book editor has not only an opening tree view, but also a list view of opening lines where multiple lines with different last moves and possibly ECO codes may appear, leading to the current position.

=See also=
 * NIC-Key

=Forum Posts=

1998 ...

 * Electronic ECO by C.M.A., CCC, November 23, 1998
 * Mercilous Attack? What is it? What is the ECO on it? by Dann Corbit, CCC, July 07, 1999

2000 ...

 * ECO question by Robert Pope, CCC, March 04, 2000
 * implement program to identify eco code by Sylvain Eche, CCC, May 13, 2002
 * ECO-Browser in Scid 3.6.1 (under WinXP) by Daniel Clausen, CCC, September 23, 2004
 * ECO Codes as PGN 1.16 available for download by Michael Diosi, CCC, May 17, 2005

2010 ...

 * Scid.eco by Gregor Cramer, scid-users, April 19, 2014
 * code method to get ECO code/opening name by Mike Adams, CCC, April 27, 2014
 * Hint for ChessGUI users by Jon Dart, CCC, April 26, 2016 » ChessGUI
 * Tool to ECO classify EPD positions? by Dann Corbit, CCC, July 28, 2017

=External Links=
 * Encyclopaedia of Chess Openings (ECO) from Wikipedia
 * List of chess openings from Wikipedia
 * ECO Code by Chess Informant - Overview
 * ECO Codes - 365Chess.com
 * ECO Listing - chessgames.com
 * ECO Opening Classification (11) from Arena Chess GUI developed by Christopher Conkie
 * eco.pgn from pgn-extract by David J. Barnes
 * arasan-chess/book/eco at master · jdart1/arasan-chess · GitHub by Jon Dart
 * Chess Programming - CleanPGN by Hugh S. Myers
 * OPEX - Chess Openings Explorer by Buğra Fırat

=References=

Up one level